javascript QUnit 单元测试
<!doctype html>
<html>
<head lang="zh-CN" dir="ltr">
<meta charset="utf-8">
<title></title>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body> <!--qunit start-->
<h1 id="qunit-header">QUnit Test Suite</h1>
<h2 id="qunit-banner"></h2>
<div id="qunit-testrunner-toolbar"></div>
<h2 id="qunit-userAgent"></h2>
<ol id="qunit-tests"></ol>
<!--qunit end--> <link rel="stylesheet" href="http://code.jquery.com/qunit/qunit-1.12.0.css">
<script type="text/javascript" src="http://code.jquery.com/qunit/qunit-1.12.0.js"></script> <script type="text/javascript" src="demo.js"></script>
</body>
</html>
test( "ok test", function() {
  ok( true, "true succeeds" );
  ok( "non-empty", "non-empty string succeeds" );
  ok( false, "false fails" );
  ok( 0, "0 fails" );
  ok( NaN, "NaN fails" );
  ok( "", "empty string fails" );
  ok( null, "null fails" );
  ok( undefined, "undefined fails" );
});
test( "strictEqual test", function() {
  strictEqual( 1, 1, "1 and 1 are the same value and type" );
});
test( "a test", function() {
  notStrictEqual( 1, "1", "String '1' and number 1 don't have the same value" );
});
test( "throws", function() {
  function CustomError( message ) {
    this.message = message;
  }
  CustomError.prototype.toString = function() {
    return this.message;
  };
  throws(
    function() {
      throw "error"
    },
    "throws with just a message, no expected"
  );
  throws(
    function() {
      throw new CustomError();
    },
    CustomError,
    "raised error is an instance of CustomError"
  );
  throws(
    function() {
      throw new CustomError("some error description");
    },
    /description/,
    "raised error message contains 'description'"
  );
});
asyncTest( "asynchronous test: one second later!", function() {
  expect( 1 );
  setTimeout(function() {
    ok( true, "Passed and ready to resume!" );
    start();
  }, 1000);
});
test( "a test", function() {
  stop();
  asyncOp();
  setTimeout(function() {
    equals( asyncOp.result, "someExpectedValue" );
    start();
  }, 150 );
});
test( "a test", function() {
  stop();
  asyncOp();
  setTimeout(function() {
    equals( asyncOp.result, "someExpectedValue" );
    start();
  }, 150 );
});
QUnit.done(function( details ) {
  console.log( "Total: ", details.total, " Failed: ", details.failed, " Passed: ", details.passed, " Runtime: ", details.runtime );
});
asyncTest( "asynchronous test: one second later!", function() {
  expect( 1 );
  setTimeout(function() {
    ok( true, "Passed and ready to resume!" );
    start();
  }, 1000);
});
asyncTest( "asynchronous test: video ready to play", 1, function() {
  var $video = $( "video" );
  $video.on( "canplaythrough", function() {
    ok( true, "video has loaded and is ready to play" );
    start();
  });
});
test( "a test", function() {
  expect( 2 );
  function calc( x, operation ) {
    return operation( x );
  }
  var result = calc( 2, function( x ) {
    ok( true, "calc() calls operation function" );
    return x * x;
  });
  equal( result, 4, "2 square equals 4" );
});
test( "a test", 2, function() {
  function calc( x, operation ) {
    return operation( x );
  }
  var result = calc( 2, function( x ) {
    ok( true, "calc() calls operation function" );
    return x * x;
  });
  equal( result, 4, "2 square equals 4" );
});
module( "group a" );
test( "a basic test example", function() {
  ok( true, "this test is fine" );
});
test( "a basic test example 2", function() {
  ok( true, "this test is fine" );
});
module( "group b" );
test( "a basic test example 3", function() {
  ok( true, "this test is fine" );
});
test( "a basic test example 4", function() {
  ok( true, "this test is fine" );
});
javascript QUnit 单元测试的更多相关文章
- 对 JavaScript 进行单元测试的工具
		简介 单元测试关注的是验证一个模块或一段代码的执行效果是否和设计或预期一样.有些开发人员认为,编写测试用例浪费时间而宁愿去编写新的模块.然而,在处理大型应用程序时,单元测试实际上会节省时间:它能帮助您 ... 
- javascript之QUnit单元测试
		一.javascript也需要单元测试吗? 这里我并不知道你有没有开发过大型的javascript项目,至今我开发过三个大型的js项目,分为是<课程节点树管理>.<在线制作试卷> ... 
- 测试工具使用-Qunit单元测试使用过程
		031302620 应课程要求写一篇单元测试工具的博客,但是暂时没用到java,所以不想使用junit(对各种类都不熟悉的也不好谈什么测试),原计划是要用phpunit,但是安装经历了三个小时,查阅各 ... 
- JavaScript 自定义单元测试
		<!doctype html> <html> <head> <meta charset="utf-8"> <script> ... 
- javascript单元测试框架mochajs详解
		关于单元测试的想法 对于一些比较重要的项目,每次更新代码之后总是要自己测好久,担心一旦上线出了问题影响的服务太多,此时就希望能有一个比较规范的测试流程.在github上看到牛逼的javascript开 ... 
- javascript单元测试(转)
		1. 什么是单元测试 在计算机编程中,单元测试(又称为模块测试)是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作.程序单元是应用的最小可测试部件.在过程化编程中,一个单元就是单 ... 
- 单元测试(qunit)
		<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ... 
- (译)学习如何构建自动化、跨浏览器的JavaScript单元测试
		作者:Philip Walton 译者:Yeaseon 原文链接:点此查看 译文仅供个人学习,不用于任何形式商业目的,转载请注明原作者.文章来源.翻译作者及链接,版权归原文作者所有. ___ 我们都知 ... 
- [转]javascript单元测试
		1. 什么是单元测试 在计算机编程中,单元测试(又称为模块测试)是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作.程序单元是应用的最小可测试部件.在过程化编程中,一个单元就是单 ... 
随机推荐
- Entity Framework技术导游系列开篇与热身
			在微软平台写程序有年头了,随着微软数据存取技术的持续演化,我在程序中先后使用过ODBC.DAO.ADO.ADO.NET.LINQ to SQL. Entity Framework这些技术. 近几年来, ... 
- IOS常用加密Encryption
			NSString+Encryption.h // // NSString+Encryption.h // haochang // // Created by Administrator on 14-4 ... 
- Codeforce 438D-The Child and Sequence                                                    分类:            Brush Mode             2014-10-06 20:20    102人阅读    评论(0)    收藏
			D. The Child and Sequence time limit per test 4 seconds memory limit per test 256 megabytes input st ... 
- PowerDesigner(五)-概念数据模型(CDM生成LDM,PDM和OOM)(转)
			概念数据模型 概念数据模型(Conceptual Data Model,CDM):表达的是数据整体逻辑结构,该结构独立于任何软件和数据存储结构,即它只是系统分析人员,应用程序设计人员,维护人员和用户之 ... 
- SQL中自定义拆分为新表的函数
			/*按照符号分割字符串*/ create function [dbo].[m_split](@c varchar(2000),@split varchar(2)) returns @t table(c ... 
- Linux内存分配----SLAB
			动态内存管理 内存管理的目标是提供一种方法,为实现各种目的而在各个用户之间实现内存共享.内存管理方法应该实现以下两个功能: 最小化管理内存所需的时间 最大化用于一般应用的可用内存(最小化管理开销) 内 ... 
- jQuery实现 浏览器后退到上次浏览位置
			近日看腾讯.新浪的移动端网站,发现一件非常蛋疼的事情,在列表浏览内容,我往下翻,往下翻,突然,看到一个十分霸气的标题,于是点到文章查看详细内容,若干时间后,点回退按钮,浏览器回退到页面的最顶部了. 于 ... 
- PC端模拟手机浏览网页
			很多网站都通过User-Agent来判断浏览器类型,如果是3G手机,显示手机页面内容,如果是普通浏览器,显示普通网页内容. 谷歌Chrome浏览器,可以很方便地用来当3G手机模拟器.在Windows的 ... 
- iOS警告-Warning: Error creating LLDB target at path(模拟器警告)
			Warning: Error creating LLDB target at path '/Users/apple/Library/Developer/Xcode/DerivedData/Observ ... 
- POJ 1665
			#include<iostream>//chengdacaizi 08.11.12 #include<iomanip> #define p 3.1415927 using na ... 
