zoukankan      html  css  js  c++  java
  • mass Framework spec模块v5

    这是我的测试框架的第8代,前三代是前一个体系,名为abut。spec混杂了Qunit与BDD的一种语法,但更简巧。

    主要改进是用户界面,更方便地定位出错的断言。为了防止某一个断言抛错而影响整个测试,这次还引用window.onerror来吞掉所有错误。

    使用ol列表直接列举要测试逻辑,代替直接显示源码,不对不怎么会编码的测试人员更为友好。引入\u2714与\u2716这两个字符让断言结果更醒目。

    下面就是显示图:

    用法:

    define(["$spec,mass"], function() {
        $.log("已加载test/mass模块", 7)
     
        describe('mass', {
            type: function() {
                expect($.type("string")).eq("String", "取字符串的类型");
                expect($.type(1)).eq("Number", "取数字的类型");
                expect($.type(!1)).eq("Boolean", "取布尔的类型");
                expect($.type(NaN)).eq("NaN", "取NaN的类型");
                expect($.type(/test/i)).eq("RegExp", "取正则的类型");
                expect($.type($.noop)).eq("Function", "取函数的类型");
                expect($.type(null)).eq("Null", "取null的类型");
                expect($.type({})).eq("Object", "取对象的类型");
                expect($.type([])).eq("Array", "取数组的类型");
                expect($.type(new Date)).eq("Date", "取日期的类型");
                expect($.type(window)).eq("Window", "取window的类型");
                expect($.type(document)).eq("Document", "取document的类型");
                expect($.type(document.documentElement)).eq("HTML", "取HTML节点的类型");
                expect($.type(document.body)).eq("BODY", "取BODY节点的类型");
                expect($.type(document.childNodes)).eq("NodeList", "取节点集合的类型");
                expect($.type(document.getElementsByTagName("*"))).eq("NodeList", "取节点集合的类型");
                expect($.type(arguments)).eq("Arguments", "取参数对象的类型");
                expect($.type(1, "Number")).eq(true, "测试$.type的第二个参数");
            }
       });
    })

    源码

    新一年,测试框架会继续强化。单元测试对一个框架的升级与编写是极其重要的。在没有单元测试的情况下进行重构等于自寻死路。

     
     
     
    标签: javascriptmass
  • 相关阅读:
    Web Api系列教程第2季(OData篇)(一)——OData简介和一个小应用
    漫步ASP.NET MVC的处理管线
    使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【十】——使用CacheCow和ETag缓存资源
    工具分享——将C#文档注释生成.chm帮助文档
    使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【外传】——Attribute Routing
    使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【九】——API变了,客户端怎么办?
    使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【八】——Web Api的安全性
    C#基础——谈谈.NET异步编程的演变史
    使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【七】——实现资源的分页
    使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【六】——实现资源间的关联
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/2848125.html
Copyright © 2011-2022 走看看