有什麼新的YUI的測試3.1.0

2010年4月2日,9:00上午由Nicholas C. Zakas | 開發 | 1評論

尼古拉斯三Zakas@ slicknet )是對鉛的前端工程師雅虎 主頁YUI的貢獻,以及作者專業的JavaScript Web開發和新發布的, 高性能的JavaScript 他的測試驅動開發介紹幾個從尼古拉斯銳劇院之一。

其中一個大的推動YUI的3.1.0版本,在自動化領域,圍繞YUI的測試。 雖然這是偉大的,開發商也開始寫他們的JavaScript單元測試,測試驅動的開發,達到其真正的潛力,只有這些測試時,自動運行,並生成報告以跟踪趨勢。 這整個過程需要超過只是JavaScript,當然,這個測試YUI的最新版本有一些新的功能,在持續集成環境中更容易使用。

新的TestRunner方法

是比較流行的瀏覽器測試自動化工具之一。 在談到與工程師們經常使用YUI的測試中,我們了解到,許多已經使用Selenium自動化他們的JavaScript單元測試。 從這些討論中出現的兩大痛點:

  1. 這是很難確定測試是否仍在執行或不。
  2. 有沒有簡單的方法來提取測試結果。

為了解決這兩個關注,兩個新的方法被添加到TestRunner界面。 第一種方法, isRunning()返回true時的TestRunner是在中間的運行測試,否則返回false。 這使硒的易使用waitForCondition()方法,以確定已完成測試時。

第二個新的方法是getResults() 正在執行測試時,此方法始終返回null 一旦測試完成後,該方法返回一個對象,它包含所有的測試結果信息。 另外,您可以通過在測試結果格式(可用Y.Test.Format )返回一個字符串,其中包含在指定格式的測試結果信息。 例如:

 var results = Y.Test.Runner.getResults(Y.Test.Format.XML); 

這種方法也使得腳本與硒更容易,因為你能夠從你的腳本的測試結果信息檢索可用的格式。

注意:硒的腳本能力只能訪問在全球範圍內的對象,所以你需要確保TestRunner實例是在全球範圍內提供。

新結果格式

也有很多的工具,可以採取單元測試的結果,並生成報告。 YUI的3.1.0之前,YUI的測試支持XML和JSON只有基本的測試結果格式。 雖然這些都可以轉化成其他格式,這是有意義的,以實現兩個其他流行格式本身: JUnit的 XML和TAP 您可以訪問的結果,在使用這些新的格式getResults()

 var junitXml= Y.Test.Runner.getResults(Y.Test.Format.JUnitXML); var tap = Y.Test.Runner.getResults(Y.Test.Format.TAP); 

JUnit的XML是最廣泛支持的測試結果格式之間現有的工具之一。 雖然其格式不完全映射到YUI測試結構(例如,有一個嵌套XML在JUnit測試套件的概念),你仍然可以捕捉到足夠的信息作出合理的報告。

TAP是一個新的測試結果是自由格式的文本格式。 XML與JUnit,技術諮詢有沒有分組測試的概念,所以YUI的測試插入到輸出的意見,以確定測試套件和測試用例。

要了解更多有關新的測試格式,以及輸出示例,請參見YUI測試文檔的瀏覽結果 這些新的格式,也可以用現有的測試報告機制。

更多自動化的方式

這些都只是朝著改善的JavaScript單元測試自動化測試使用YUI的第一個步驟。 在未來的一年中,您將聽到更多關於YUI測試和自動化測試。 JavaScript的持續集成是一個不斷發展的學科和YUI的測試如何可以使開發人員更容易這項工作,我們很樂意聽到您的反饋。

共享和擴展: 書籤del.icio.us Digg它! | reddit!

1條評論

  1. 這個漂亮的真棒消息! 我們使用CruiseControl(與phpUnderControl),並已想投入的過程中我們的JavaScript單元測試(DOH),但從來輸出格式。

    我們將看看在YUI的測試,尤其是因為我們需要硒的優勢,以及(僅適用於驗收測試,此刻)。

    - 2010年4月2日,由埃里克·克萊蒙斯

很抱歉,評論已被封閉,在這個時候。

主辦雅虎

©2006-2012雅虎公司所有權利保留。 隱私政策 - 服務條款

支持WordPress的關於雅虎 虛擬主機