Qunit 和 jsCoverage使用方法(js单元测试)

近日在网上浏览过很多有关js单元测试相关的文档,工具,但是,针对Qunit 和 jsCoverage使用方法,缺少详细说明,对于初入前端的人来说,很难明白其中的意思,特此整理这篇文章,希望能够减少大家学习Qunit 和 jsCoverage使用方法的时间。
 
 
Qunit:js单元测试工具
jsCoverage: 显示单元测试覆盖率
【说明】以下演示使用HBuilder编辑器进行演示
 
一、准备材料
 https://github.com/chaishi/QunitAndJSCoverage 所需材料,此处均有。也可从网上自行下载。
 
Qunit 下载地址之一: http://qunitjs.com/, 如图
 
 
 
 
 
 
二、Qunit使用方法
 
第一步:新建工程jsUnit,目录内容,如下图所示,
 
目录说明:
"code":
        code -> js :存放工程待测试的js文件。需要自己写。
        code -> qunit: 存放单元测试需要的qunit.css和qunit.js。从网上直接下载;
        code - >testJs:存放单元测试代码。自己写。
        qunitTest.html:执行testJs中的单元测试代码。使用模板。
"jsCoverage":空文件夹,后面用来存放生成的jscoverage.html等文件。
 
第二步: 在compute.js文件里面写入以下代码;
function add(a,b){
if(a + b > 0)
return true;
else
return false;
} function reduc(a,b){
if(a - b > 0)
return true;
else
return false;
}
 
第三步:在compute.test.js里面写入测试代码,如下
test("add()测试",function(){
equal(add(1,2),true,"add(1,2)");
}); test("reduc()测试",function(){
equal(reduc(1,2),false,"reduc(1,2)");
equal(reduc(2,1),true,"reduc(1,2)");
});
 
第四步:在qunitTest.html写入如下代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>单元测试</title>
<link rel="stylesheet" href="qunit/qunit.css" />
<script type="text/javascript" src="qunit/qunit.js" ></script>
<script type="text/javascript" src="js/compute.js" ></script>
<script type="text/javascript" src="testjs/compute.test.js" ></script>
</head>
<body>
<div id="qunit"></div>
<div id="qunit-fixture">test markup</div>
</body>
</html>
第五步:用浏览器打开 qunitTest.html, 如: http://192.168.1.115:8020/qunitExample/code/qunitTest.html。 至此,单元测试已经演示完成。
 
 
三、jsCoverage使用方法
 
第一步:打开已下载的 jsCoverage,如图,
【说明】原文件中还有"doc"文件夹,此处已删除。
 
第二步:将 jscoverage.exe 拷贝到 C:\Windows\System32(此处很重要)
 
第三步:打开命令行,输入 
jscoverage SOURCE-DIRECTORY DESTINATION-DIRECTORY

其中

SOURCE-DIRECTORY:表示包含Javascrīpt脚本的Web文件(qunitTest.html)所在的目录, 
                                     如: E:\HBulider_InstallPath\qunitExample\code
DESTINATION-DIRECTORY:表示测试目录,JSCoverage会把包含Javascrīpt脚本的Web文件所在的目录的所有文件拷贝到测试目录中
                                    如:E:\HBulider_InstallPath\qunitExample\jsCoverage
 
示例命令输入:jscoverage E:\HBulider_InstallPath\qunitExample\code E:\HBulider_InstallPath\qunitExample\jsCoverage
 
该命令执行后,jsCoverage 目录下出现 下图所示文件,
 
 
第四步:用浏览器打开jscoverage.html,
 
输入地址:file:///E:/HBulider_InstallPath/qunitExample/jsCoverage/jscoverage.html,出现以下问题
 
 
 
输入地址:http://192.168.1.115:8020/qunitExample/jsCoverage/jscoverage.html, 显示正常(启动服务器
 
 
由此可知,应该使用第二种方式访问页面。
 
 
第五步(最后一步)
在URL中输入 qunitTest.html地址。(访问方式同 jscoverage.html )
 
 
 
 

Qunit 和 jsCoverage使用方法(js单元测试)的更多相关文章

  1. 【JS单元测试】Qunit 和 jsCoverage使用方法

          近日在网上浏览过很多有关js单元测试相关的文档,工具,但是,针对Qunit 和 jsCoverage使用方法,缺少详细说明,对于初入前端的人来说,很难明白其中的意思,特此整理这篇文章,希望 ...

  2. Qunit 和 jsCoverage使用方法

    Qunit 和 jsCoverage使用方法(js单元测试) 近日在网上浏览过很多有关js单元测试相关的文档,工具,但是,针对Qunit 和 jsCoverage使用方法,缺少详细说明,对于初入前端的 ...

  3. 前端测试框架对比(js单元测试框架对比)

    前端测试框架对比(js单元测试框架对比) 本文主要目的在于横评业界主流的几款前端框架,顺带说下相关的一些内容. 测试分类 通常应用会有 单元测试(Unit tests) 和 功能测试(Function ...

  4. js单元测试框架

    js单元测试框架 前端测试框架对比(js单元测试框架对比) 本文主要目的在于横评业界主流的几款前端框架,顺带说下相关的一些内容. 测试分类 通常应用会有 单元测试(Unit tests) 和 功能测试 ...

  5. 啥时候js单元测试变的重要起来?

    作为一个菜鸟,开这个专栏其实不合适,但又突然发现这个比以往任何时候都重要,所以还是写写我的感受 首先,在传统的pc上也有大量的web站点和各种项目都有复杂的js,但是基本不做单元测试,为啥呢?因为传统 ...

  6. ASP.NET开发中主要的字符验证方法-JS验证、正则表达式、验证控件、后台验证

    ASP.NET开发中主要的字符验证方法-JS验证.正则表达式.验证控件.后台验证 2012年03月19日 星期一 下午 8:53 在ASP.NET开发中主要的验证方法收藏 <1>使用JS验 ...

  7. 获取网页URL地址及参数等的两种方法(js和C#)

    转:获取网页URL地址及参数等的两种方法(js和C#) 一 js 先看一个示例 用javascript获取url网址信息 <script type="text/javascript&q ...

  8. JS 单元测试

    JS单元测试,我工作时主要以mocha + chai 下面时具体的文档: mocha: https://mochajs.org/#asynchronous-code Chai: http://chai ...

  9. 对无返回值、使用Action或Func作为参数、多重载的方法进行单元测试

    VS2012 Unit Test(Void, Action, Func) —— 对无返回值.使用Action或Func作为参数.多重载的方法进行单元测试 [提示] 1. 阅读文本前希望您具备如下知识: ...

随机推荐

  1. Failure [INSTALL_FAILED_OLDER_SDK] [每件问题100块]

    问题描述:链接真机时候出现的问题 解决问题: minSdkVersion 10targetSdkVersion 22 修改这两个值

  2. 深入研究memcache 特性和限制

    深入研究memcache 特性和限制在 Memcached中可以保存的item数据量是没有限制的,只要内存足够 .Memcached 单进程最大使用内存为2G,要使用更多内存,可以分多个端口开启多个M ...

  3. 【转载】Oracle数据字典详解

    转自:http://czmmiao.iteye.com/blog/1258462 Oracle数据字典概述 数据库是数据的集合,数据库维护和管理这用户的数据,那么这些用户数据表都存在哪里,用户的信息是 ...

  4. Android 中查看内存的使用情况集经常使用adb命令

    1. 在IDE中查看Log信息 当程序执行垃圾回收的时候,会打印一条Log信息.其格式例如以下: D/dalvikvm: <GC_Reason> <Amount_freed>, ...

  5. thread_线程间协作:wait、notify、notifyAll和Condition

    经典模式:生产者-消费者模型:当队列满时,生产者需要等待队列有空间才能继续往里面放入商品,而在等待的期间内,生产者必须释放对临界资源(即队列)的占用权.因为生产者如果不释放对临界资源的占用权,那么消费 ...

  6. SqlServer2005删除实例

    控制面板->选中“SQL Server 2005”卸载,卸载的时候可以选择实例.

  7. Nmap笔记本

    nmap -vv 192.168.1.100 -p1-65535 跑1-65535的端口并且设置对结果的详细输出 nmap -vv 192.168.1.1/8 -p 1433 --open 跑开放14 ...

  8. POJ 2472 106 miles to Chicago

    最短路问题变形. 题意是给你一些道路,和路过时不被抓的概率. 要求找一条到达目的地时不被抓的最大概率概率. 初始 dis[]设为 1 .其余为 0 .找最大就可以. #include<cstdi ...

  9. RMAN Maintenance

    CROSSCHECK: 确认 rman repository 与 实际的备份集 是否同步. 你可以先使用 LIST 命令查看你之前做的备份的情况, 然后使用 CROSSCHECK 命令来确认这些文件还 ...

  10. 谈谈对XML的理解?说明Web应用中Web.xml文件的作用?

    谈谈对XML的理解?说明Web应用中Web.xml文件的作用? 解答:XML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard ...