最近发现JUnit测试javascript很好用

本文介绍了Jsunit作为Junit的JavaScript版本的使用方法,包括基本文件引用、测试函数实现及运行方式。通过实例展示了如何在HTML文件中整合并运行Jsunit测试,包括测试函数的定义、测试集的组织与日志跟踪等关键步骤。
摘要由CSDN通过智能技术生成
Jsunit 就是 Junit 的javascript 版本,下载并解压Jsunit zip,大部分的核心文件都在 jsunit/app 目录下,
两个最基本的文件:
. jsUnitCore.js — 每个测试文件都要引用它
. testRunner.html — 用来运行具体的jsunit 测试

(1) 起步例子:
在Jsunit解压后的同级目录下建立两个文件,目录结构:
|– jsunit
|– test.html

写完后运行 jsunit/testRunner.html,在页面中选择test.html, 点击run,可以看到测试结果信息。

// test.html 测试文件

查看源代码打印帮助

01 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

02 <HTML>

03 <HEAD>

04 <TITLE> New Document </TITLE>

05 <script language="JavaScript"

06 src="app/jsUnitCore.js"></script>

07 <script language="JavaScript">

08 function addTwoNumbers(value1, value2){

09 return parseInt(value1) + parseInt(value2);

10 }

11 function testValidArgs()

12 {

13 assertEquals("2 + 2 is 4",

14 4, addTwoNumbers(2, 2));

15 }

16 function testWithNegativeNumbers()

17 {

18 assertEquals("-2 + -2 is -4",

19 -4, addTwoNumbers(-2, -2));

20 }

21 function exposeTestFunctionNames()

22 {

23 var tests = new Array(2);

24 tests[0] = "testValidArgs";

25 tests[1] = "testWithNegativeNumbers";

26 return tests;

27 }

28 </script>

29 </HEAD>

30

31 <BODY>

32 test page for addTwoNumbers(value1, value2);

33 </BODY>

34 </HTML>




通常以”test”开头的测试函数会被自动发现,但如果没有发现,就需要我们用exposeTestFunctionNames 函数来显示指定测试函数。

(2) setUpPage()

jsunit 包含了一次性启动方法,setUpPage() 只对每个测试页调用一次,即在所有测试函数调用之前调用,适于做预处理,但要注意在setUpPage()最后一行要把 setUpPageStatus 变量设置为 “complete”, 如:

var arg1;
var arg2;

function setUpPage(){
arg1 = 2;
arg2 = 2;
setUpPageStatus = “complete”;
}




(3) 测试集

测试集把不同的测试页分组组织,其中包含测试页或其他测试集,他们会按照顺序执行。
注意点:
. 测试集中不能包含任何测试函数
. 必须包含一个返回 jsUnitTestSuite 对象的 suite 函数
. 有两个方法添加测试页:addTestPage(testPage) addTestSuite(testSuite), 在添加测试页时要注意路径,应是相对于testRunner.html 的

例子:

查看源代码打印帮助

01 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

02 <HTML>

03 <HEAD>

04 <TITLE> New Document </TITLE>

05 <script language="JavaScript"

06 src="app/jsUnitCore.js"></script>

07 <script language="JavaScript">

08 function sampleSuite()

09 {

10 var sampleSuite = new top.jsUnitTestSuite();

11 sampleSuite.addTestPage("../test.html");

12 return sampleSuite;

13 }

14 function suite()

15 {

16 var testSuite = new top.jsUnitTestSuite();

17 testSuite.addTestSuite(sampleSuite());

18 testSuite.addTestPage("../test.html");

19 return testSuite;

20 }

21 </script>

22 </HEAD>

23

24 <BODY>

25 </BODY>

26 </HTML>




(4) 日志和跟踪
运行testRunner.html时会发现他有 Trace level 项,用于现实我们在测试方法中的日志信息,包含3个函数:
warn(message, [value])
inform(message, [value])
debug(message, [value])

JsUnit下载地址:http://sourceforge.net/projects/jsunit/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值