JsUnit测试JS
来源:互联网 发布:开淘宝专卖店要多少钱 编辑:程序博客网 时间:2024/06/05 05:22
为什么要用JsUnit,因为项目不是WEB项目,JS代码无法用网页测试,同样无法通过alert测试,所以采用JsUnit来测试编写的JS代码。
准备工作:下载JsUnit相关资源:www.jsunit.net 解压后如下图:
JsUnit的核心文件(jsUnitCore.js、jsUnitTestManager.js等 )都在app文件夹中,testRunner.html是用来JS测试图形化页面,你不需要通过web服务器访问它,只需要通过文件系统加载它进行浏览就可以了,如下:
通过file输入框加载你的测试页面,点击Run可以运行测试页,下面的Trace level下拉框可以选择日志级别(warn、info、debug)。注意,有的浏览器可能看不见file输入框,请选择合适的浏览器测试。
下面我们编写一个测试用例test01.html:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE> my_jsUnit_test01</TITLE> <script language="JavaScript" src="../app/jsUnitCore.js"></script><script language="JavaScript">var result = null;function add(num1,num2){return num1+num2;}function multiply(num1,num2){ return num1*num2;}//测试方式要以test开头,且不带有参数,jsUnit会自动识别test开头的测试方法并会运行它function testAdd() {result = add(1,1);debug("add(1,1)="+result);assertEquals("1+1=2", 2, add(1,1));}//无效的测试方法function multiplyTest(){result = multiply(2,3);debug("multiply(2,3)="+result); assertEquals("2*3=6", 5, multiply(2,3));}//如果找不到测试方法或要测试的方法不是以标准的test开头时,使用如下方法进行手动指定function exposeTestFunctionNames() { var tests = new Array(2); tests[0] = "multiplyTest"; tests[1] = "testAdd"; return tests; }//setUp()会在每个测试之前调用function setUp(){info("-->result="+result);result = 0;info("测试夹具,初始化准备状态-->result="+result);}//tearDown()会在每个测试之后调用function tearDown(){result = null;warn("清除或重置测试夹具-->result="+result);}//一次性启动方法,在所有测试函数(包括setUp())调用之前调用,主意该方法中不能有日志操作function setUpPage(){result = 100;//完成后一定要设置这个,否则会进入阻塞状态 setUpPageStatus = "complete"; }</script> </HEAD> <BODY> test page for testValidArgs(); </BODY> </HTML>打开testRunner.html,在file里填上你的test01.html路径,选择debug日志级别,点击Run,出现测试结果,点击error信息会弹出具体信息:
点击Run后弹出的日志信息如下:
批量测试:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <title>testSuite.html</title> <script language="JavaScript" src="../app/jsUnitCore.js"></script> <script type="text/javascript"> function sampleSuite(){var sampleSuite = new JsUnitTestSuite();//向测试集中增加测试页sampleSuite.addTestPage("tests/taobao_test.html");return sampleSuite;} //必须提供一个名为suite()的方法,jsUnit才能识别测试集,并自动测试function suite(){var testSuite = new JsUnitTestSuite();//向测试集中增加其他的测试集testSuite.addTestSuite(sampleSuite());testSuite.addTestPage("tests/ShopexCore_test.html");return testSuite;} </script> </head> <body>This is a simple test suite. </body></html>
- JsUnit测试JS
- 使用jsunit测试js
- JS测试工具JsUnit
- JsUnit测试JS
- IT忍者神龟之JsUnit测试JS
- jsunit自动化测试工具
- jsUnit测试框架
- javascript测试工具JsUnit 2.1
- javascript测试工具JsUnit 2.1
- 用JsUnit测试和跟踪Javascript
- JSUnit使用说明
- JsUnit 简介
- #笔记#圣思园 JavaWeb 第59讲——使用Firebug调试JS、JSUnit,XUnit
- JsUnit - Agile AJAX Development
- jsunit使用初探
- 关于intellij 的jsunit
- javascript单元测试(Jsunit应用)
- javascript 单元测试工具 JsUnit
- Windows XP 下使用命令行编译、运行 QT4 程序
- Linux-2.6.32.2内核在mini2440上的移植---根文件系统制作(1)
- Cmake学习笔记
- 如风
- 杭电acm1006正解
- JsUnit测试JS
- visual sourcesafe (vss)团队合作
- Ffmpeg 支持的所有格式列表
- Redis 简介
- 新的C语言: C99标准介绍
- JDBC处理大数据2
- Jdbc扩展---Jdbc处理二进制数据
- 全面剖析XMLHttpRequest对象
- PHP重定向的具体实现方式