0
回答
FireUnit:基于Firebug的JavaScript单元测试扩展
极速云服务器,低至1.04元/天>>>   

John Resig最近在他的博客中发表文章John Resig – FireUnit: JavaScript Unit Testing Extension.发布了他与Jan Odvarko合作开发的一款基于Firebug的扩展FireUnit。(Firebug真是越来越强大了……)
简单说来,FireUnit给Firebug增加了一个标签面板,并提供了一些简单的JavaScript API来记录和查看测试。
举例来说:

  1. // Simple true-like/false-like testing
  2. fireunit.ok( true"I'm going to pass!" );
  3. fireunit.ok( false"I'm going to fail!" );
  4.  
  5. // Compare two strings - shows a diff of the
  6. // results if they're different
  7. fireunit.compare(
  8.   "The lazy fox jumped over the log.",
  9.   "The lazy brown fox jumped the log.",
  10.   "Are these two strings the same?"
  11. );
  12.  
  13. // Compare a string using a regular expression
  14. fireunit.reCompare(
  15.   /The .* fox jumped the log./,
  16.   "The lazy brown fox jumped the log.",
  17.   "Compare a string using a RegExp."
  18. );
  19.  
  20. // Display the total results
  21. fireunit.testDone();

就可以在Firebug中的Test标签面板中看到下图:

fireunit测试

FireUnit还可以模拟触发原生浏览器事件:

  1. // You can also simulate browser events
  2. var input = document.getElementsByTagName("input")[];
  3. fireunit.mouseDown( input );
  4. fireunit.click( input );
  5. fireunit.focus( input );
  6. fireunit.key( input"a" );

此外,可以批量测试文件(每个文件都含有一些独立测试)

  1. // Or run multiple pages of tests:
  2. fireunit.runTests("test2.html""test3.html");
  3.  
  4. // Place at the end of every test file in order to continue
  5. fireunit.testDone();

fireunit批量测试

推荐把测试代码包含在下面的if语句内

  1. if ( typeof fireunit === "object" ) {
  2.         //Your code for test
  3. }

如果感兴趣,可以访问Fireunit.org下载并测试(这个网站内就包含了测试代码,安装后即可看到第一张图的内容)
可以在Github上获取源码,得用git而不是svn
Jan也写了一篇文章,可以看看。

http://shawphy.com/2008/12/fireunit.html

举报
红薯
发帖于9年前 0回/256阅
顶部