jasmine

作者: YYece | 来源:发表于2018-07-24 10:32 被阅读0次

    1. 什么是jasmine

    Jasmine是一个Javascript的BDD(Behavior-Driven Development)测试框架,不依赖任何其他框架。
    这里不是 茉莉花

    2. jasmine使用

    这里 下载 stantd-alone安装包,并解压,双击打开里面的 specRunner.html, 即可看到测试示例,我们只要将自己的js源文件和测试文件分别放到 srcspec 文件夹中。

    specRunner.html 到底是长什么样子的呢? f12 我们发现 先后加载了 jasmine.css, jasmine.js ,jasmine-html.js, boot.jsjasmine框架相关文件和 我们的 js源文件 jasmine测试文件

    3. 基本语法

    • describe(String , function)
      可以理解为是一个测试集或者测试包(为了便于称呼,我们本文中统一叫测试集,官方称之为suite),主要功能是用来划分单元测试的,describe是可以嵌套使用的
    • it(String , function)
      测试用例(官方称之为spec)
    • except
      断言表达式

    4. 第一个例子

    Step 1:
    我们先创建一个名为myFirstJasmineTest.js的文件。

    Step 2:
    在Html页面中同时引用jasmine的框架文件与myFirstJasmineTest.js文件

    Step 3:
    在myFirstJasmineTest.js文件中添加如下内容

    describe("My first Jasmine test", function() {
      it("a spec with an expectation", function() {
        expect(1).toBe(1);
        expect(1===1).toBe(true);
        expect('a').not.toBe('b');
      });
      
      it("an other spec in current suite", function() {
          expect(true).toBe(true);
      });
    });
    
    describe("My first Jasmine test", function() {
      it("nothing", function() {
      });
    });
    

    5. except匹配

    每个匹配方法在期望值和实际值之间执行逻辑比较,它负责告诉jasmine断言的真假,从而决定测试的成功或失败。
    肯定断言 expect(true).toBe(true);
    否定断言 expect(false).not.toBe(true);
    jasmine有很丰富的匹配方法,而且可以自定义匹配方法。 内置的匹配方法有:

    • toBe():基本类型判断
    • toEqual():toEqual有两种用法,对于基本的类型,toEqual相当于toBe;toEqual还可以用来判断对象
    • toMatch(): 使用正则表达式判断
    • toBeUndefined(): 判断是否是undefined,与toBeDefine相反
    • toBeNull():判断是否是null
    • toBeTruthy():判断是否能转换成bool型,判断的是否是False
    • toContain(): 判断集合是否包含(可以是普通类型,和可以是对象)
    • toBeLessThan(): 判断值类型的大小,结果若小则为True(也可以判断字符及字符串,以ascii码的大小为判断依据)
    • toBeCloseTo():判断数字是否相似(第二个参数为小数精度,默认为2位)
    • toThrowError(): 判断是否抛出异常

    相关文章

      网友评论

          本文标题:jasmine

          本文链接:https://www.haomeiwen.com/subject/qltsmftx.html