YUI的測試1.0.0 Beta 2的公佈
2011年4月13日,在下午04:04由Nicholas C. Zakas |在發展 | 1評論去年年底,我們發布的Beta 1版YUI的測試。 自那時以來,我們一直在收集反饋,修復錯誤,並實施新的功能。 今天,我高興地宣布YUI的測試 1.0.0 Beta 2中,大會前的最後計劃的Beta版本的可用性。 本次發布的一些新的核心功能,以及Node.js.初步支持 所有這一切的目的是使YUI的測試更完整的測試解決方案,無論你寫 JavaScript。
核心變化
從 YUI社區的反饋,已經出現了一些重要的新增YUI測試核心。 第一個這樣的變化是引進init()和destroy() TestCase對象。 在此版本之前,您可以使用setUp()和tearDown()來初始化和清理數據需要運行測試。 在傳統的xUnit風格, setUp()運行每個測試之前和tearDown()後,每次測試運行。 init()和destroy()方法只有一次運行每個TestCase對象: init()首先運行前,在第一次調用setUp() ,並destroy()運行最後的最後一次通話後, tearDown() 。 這些方法是有用的成立,整個數據TestCase需要。 例如:
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"); } }); 另一個變化是引入一個稱為上下文數據功能。 TestRunner開始時,它創建一個傳遞到每一個對象init() setUp() , destroy() tearDown() ,測試方法。 對象默認是空的,你可以用它方便地共享的方法和數據之間TestCase對象。 例如:
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 } }); 如何您使用的上下文數據是完全取決於你。 您可以選擇忽略你的測試,它完全和所有將繼續工作得很好。
YUI的測試為 Node.js的
繼續進行我們的YUI的測試一個無處不在的JavaScript單元測試夾具目標,Beta 2中引入Node.js. YUI的測試 您可以安裝銳通過Node.js的測試故宮使用以下命令:
npm install yuitest 一旦安裝,您可以通過在包含JavaScript的測試運行的文件和目錄。 例如:
yuitest testfile.js path/to/tests 瀏覽器之間的書面測試和寫作測試 Node.js的唯一的區別是,你必須在JavaScript文件中包括銳測試。 以下格式的作品,如果你想創建一個 JavaScript的測試文件,可以在瀏覽器和使用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); })();詳細信息(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); })();
請記住,Node.js的是不是瀏覽器環境中,並依賴於瀏覽器的功能,如DOM的測試可能會引發錯誤。
建立遺傳移動
仍然有很多工作要完成之前YUI的測試1.0.0達到GA,你能幫助! 下載測試2今天你發現的問題,並開始申報錯誤 。 叉GitHub的代碼上,並提交補丁。 對於 GA版本中,我們將尋找更多的bug修復,更好的文檔,和其他任何社會認為重要的是釋放。
分享和擴展: 書籤del.icio.us Digg它! | 書籤交易!



[...]宣布YUI的測試 1.0.0測試版2 - 雅虎用戶界面團隊宣布他們的第二個 beta版本的YUI的測試 1.0.0。 此版本的基礎上從第一個 Beta版本的反饋,現在包括init和destroy方法,讓你有測試夾具的安裝和拆解類似的行為,以及與共享上下文之間初始化,銷毀,setUp和tearDown方法[,。 ... ...]
Pingback由早上啤酒克里斯-阿爾科克»早上BREW#835 - 2011年4月15日#