Annoncerer YUI Test 1.0.0 Beta 2
April 13, 2011 kl 04:04 af Nicholas C. Zakas | I Udvikling | 1 KommentarI slutningen af sidste år har vi frigivet beta 1 version af YUI Test. Siden den tid har vi været at indsamle feedback, rette fejl, og implementering af nye funktioner. I dag er jeg glad for at kunne annoncere tilgængeligheden af YUI Test 1.0.0 beta 2, den sidste planlagte beta udgivelse før GA. Denne version indeholder nogle nye centrale funktioner samt indledende støtte til Node.js. Alt dette er designet til at gøre YUI Test en mere komplet test løsning, uanset hvor du skriver JavaScript.
Core Ændringer
Baseret på tilbagemeldinger fra YUI samfund, har der været nogle vigtige tilføjelser til YUI Test kernen. Den første ændring er indførelsen af init() og destroy() på TestCase objekter. Forud for denne udgivelse, kan du bruge setUp() og tearDown() for at initialisere og oprydning data, der kræves for at køre tests. I den traditionelle xUnit stil, setUp() løb før hver test og tearDown() løb efter hver test. De init() og destroy() metoder til hvert løb kun én gang pr TestCase objekt: init() løber først, inden den første indkaldelse til setUp() , og destroy() kører sidste, efter den sidste indkaldelse til tearDown() . Disse fremgangsmåder er nyttige til nedsættelse af data, at hele TestCase behov. For eksempel:
var testCase = new YUITest.TestCase({ name: "TestCase Name", //--------------------------------------------- // init and destroy //--------------------------------------------- init : function () { this.data = { name : "Nicholas", age : 28 }; }, destroy : function () { delete this.data; }, //--------------------------------------------- // Tests //--------------------------------------------- testName: function () { YUITest.Assert.areEqual("Nicholas", this.data.name, "Name should be 'Nicholas'"); }, testAge: function () { YUITest.Assert.areEqual(28, this.data.age, "Age should be 28"); } }); En anden ændring er indførelsen af en funktion kaldet kontekst data. Når TestRunner begynder, det skaber et objekt, der er gået ind i hver init() , setUp() , destroy() , tearDown() , og testmetode. Formålet er tom som standard, og du kan bruge det til nemt at dele data blandt metoder og TestCase objekter. For eksempel:
var testSuite = new YUITest.TestSuite({ name: "Test Suite Name", setUp: function(data){ data.topLevel = 1; } }); testSuite.add(new YUITest.TestCase({ name: "First Test Case", init: function(data){ data.foo = "bar"; }, testValueOfFoo : function (data) { YUITest.Assert.areEqual("bar", data.foo); //from init }, testValueOfTopLevel: function(data){ YUITest.Assert.areEqual(1, data.topLevel); //from test suite } }); testSuite.add(new YUITest.TestCase({ name: "Second Test Case", testValueOfFoo : function (data) { YUITest.Assert.areEqual("bar", data.foo); //from init in First Test Case }, testValueOfTopLevel: function(data){ YUITest.Assert.areEqual(1, data.topLevel); //from test suite } }); Hvordan du bruger kontekst data er helt op til dig. Du kan vælge at ignorere det fuldstændigt, og alle dine tests vil fortsætte med at fungere fint.
YUI Test for Node.js
Fortsætter med vores mål om at gøre YUI Test en allestedsnærværende armatur for JavaScript unit testing, beta 2 introducerer YUI Test for Node.js. Du kan installere YUI Test for Node.js via NPM ved hjælp af følgende kommando:
npm install yuitest Når det er installeret, kan du gå i filer og mapper, der indeholder JavaScript tests til at køre. Eksempel:
yuitest testfile.js path/to/tests Den eneste forskel mellem at skrive test til browseren og skrive test for Node.js er, at du skal inkludere YUI Test i JavaScript-filen. Følgende model fungerer godt, hvis du gerne vil oprette en JavaScript-test fil, der kan køre både i browseren og bruge Node.js,
(function(){ //define local version of YUITest based on what's available. var YUITest = this.YUITest || require("yuitest"); var testCase = new YUITest.TestCase({ //test case details }); YUITest.TestRunner.add(testCase); })(); Husk, at Node.js ikke er en browser miljø og som sådan test, der er afhængige af browserens funktioner såsom DOM sandsynligvis vil kaste fejl.
På vej mod GA
Der er stadig en masse arbejde, der skal gøres, før YUI Test 1.0.0 når GA, og du kan hjælpe! Download Beta 2 i dag og begynde at arkivere bugs til de spørgsmål, du finder. Fork koden på GitHub og sende patches. For GA frigivelse vi se på flere fejlrettelser, bedre dokumentation, og alt andet, at samfundet mener er vigtig for frigivelsen.
Del og udvide: Bookmark med del.icio.us | digg det! | reddit!
1 Comment »
RSS feed for kommentarer til dette indlæg. TrackBack URI
Efterlad en kommentar

Copyright © 2006-2012 Yahoo! Inc. Alle rettigheder forbeholdes. Privacy Policy - Servicevilkår
Powered by WordPress på Yahoo! Web Hosting .

[...] Annoncerer YUI Test 1.0.0 Beta 2 - Yahoo! User Interface hold annoncere deres anden betaversion af YUI Test 1.0.0. Denne udgivelse bygger på tilbagemeldinger fra den første betaversion, og omfatter nu init og ødelægge metoder, så du kan få armatur opsætning og demontering lignende adfærd for dine forsøg, sammen med en sammenhæng, som deles mellem init, ødelægge, opsætning og demontering metoder [. ..]
Pingback af The Morning Brew - Chris Alcock »The Morning Brew # 835 - April 15, 2011 #