微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 为什么会使用expect()在使用QUnit编写测试时?

我最近开始使用QUnit来单元测试我的 JavaScript,我有点混淆了文档中的一个功能:expect().

根据文档,expect()旨在:

[s]pecify how many assertions are expected to run within a test.

这是他们给出的例子:

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" );
});

我唯一看到的是维护噩梦.每次向测试添加断言时,必须更新该号码,否则测试将失败.这种功能有实际的应用吗?

解决方法

The only thing I see here is maintenance nightmare… Is there a practical application for this kind of feature?

那么,我认为期望的方式是使用分组有意义的任务.它可用于测试事件或回调,例如:

test('trigger an event',function() {
  expect(1);

  $('div')
    .on('click',function() { ok(1) });
    .trigger('click');
});

如果您将有意义的任务分组在小型测试中,那么只有2或3个断言才会成为一个噩梦.

原文地址:https://www.jb51.cc/js/151519.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐