美文网首页
mocha的时序问题

mocha的时序问题

作者: suemi | 来源:发表于2014-12-27 14:51 被阅读263次

前言

对于新手而言,mocha的时序就像谜一般,许多奇怪的测试样例的失败都是由于对时序不清楚。下面我就把我在测试工作中总结的时序规则部分与大家共享。

describe里地时序

simple case

describe('work',function(){
    it('1',func(){});
    it('2',func(){});
    ....
});
//按1,2,3...顺序执行

规则1:describe里地it的非异步部分按它们定义的顺序执行,它们所触发的回调的注册顺序也遵从it的注册顺序

hooks

  • before
  • after
  • beforeEach
  • afterEach
    这是比较常用的hooks,我们可以采用hooks改变在describe中的时序,但是记住hooks是在describe的基础上的,与describe联系在一起的。hooks对子describe是不起作用的。

describe间的时序

非describe部分

规则2:不被describe包裹的部分执行顺序的优先级最高

{block1}
describe('1',function(){
    ...
});
{block2}
describe('2',func(){..});
//执行顺序block1,block2,describe1,describe2

并列的describe

规则3:同一层次的describe执行顺序遵从它们的定义顺序

嵌套的describe

describe('parent',func(){
    it('1',func(){..});
    describe('child1',func(){...});
    it('2',func(){...});
    describe('child2',func(){..});
});
//执行顺序为it1,it2,child1,child2

规则4:外层describe的所有it执行优先级高于嵌套的describe

总结

最后我们把这四条规则总结一下

  • describe里地it的非异步部分按它们定义的顺序执行,它们所触发的回调的注册顺序也遵从it的注册顺序
  • 不被describe包裹的部分执行顺序的优先级最高
  • 同一层次的describe执行顺序遵从它们的定义顺序
  • 外层describe的所有it执行优先级高于嵌套的describe

相关文章

  • mocha的时序问题

    前言 对于新手而言,mocha的时序就像谜一般,许多奇怪的测试样例的失败都是由于对时序不清楚。下面我就把我在测试工...

  • 初识前端测试4 -- karma 和 mocha

    mocha 关于mocha的基础使用可以参考之前预习的时候写的mocha 基础使用。这里总结了一些基础的mocha...

  • Mocha!Mocha!

    去年人设作业创作的卡通人物:小怪物Mocha 做了两则四格漫画

  • 2018-06-15 mocha 测试安装

    昨天的mocha安装任务没有完成,今天继续 1.学习Mocha,中文文档自己找。 2.测试框架 Mocha 实例教...

  • 初识前端测试3 -- mocha

    mocha 在第一小结中的测试中用到了 mocha 框架,这一节就说说 mocha 框架吧。下面整理的内容主要来源...

  • 「叶半居随笔」阿秋和她的猫

    mocha是阿秋养的猫,自从mocha离开以后,阿秋每天都在想念他。可是,她从来都没有梦到过他。 mocha有和阳...

  • Mocha入门

    官网地址 一、Getting Started 初始化:npm init 安装mocha:npm i mocha -...

  • nodejs TDD 测试驱动开发

    nodejs 下的单元测试工具,推荐使用mocha 安装 npm install mocha —save-dev ...

  • 4.vue造轮子-自动化测试

    使用 Karma + Mocha做单元测试使用 Karma + Mocha做单元测试使用 Karma + Moch...

  • 第一周预习

    Mocha Mocha 是用于 Javascript 测试的框架。浏览器和 node 环境都可以使用。安装npm ...

网友评论

      本文标题:mocha的时序问题

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