所以我试图配置摩卡作为我正在工作的一个JavaScript项目的测试框架,我碰到了奇怪的事实,你有使用单独断言框架。 Mocha's documentation on assertions指出它设计用于任何断言框架,这是一个值得称赞的目标,但它为什么不提供任何内置的断言方法?我只想努力想到任何你想要测试框架的用例,但是没有办法通过或者不通过测试。为什么不摩卡有一个内置的断言定义
2
A
回答
4
作为Jeff mentioned摩卡的设计师让他们的用户选择使用任何断言库。至于为什么没有默认的断言,因为摩卡不需要它的工作。执行以下测试:
var a = 1;
it("test", function() {
if (a !== 2)
throw new Error("a should equal 2");
});
你得到的输出:
1) test
0 passing (3ms)
1 failing
1) test:
Error: a should equal 2
[...]
它工作得很好,没有断言库。
1
因为它不想规定你使用的是什么类型的断言框架。有些人喜欢QUnit断言风格,而另一些人喜欢更多像茉莉花这样的BDD风格。
2
节点标准库包括一个assert module。如果你喜欢,可以使用另一个断言库;但是,对于许多使用情况,标准assert就足够了。
相关问题
- 1. 柴,摩卡:确定应该断言
- 2. 摩卡不上断言(假)失败
- 3. 摩卡柴断言貌似忽略
- 4. 摩卡用的NodeJS断言挂起/超时的断言(假),而不是错误
- 5. 如何编写自定义PHPUnit断言,其行为如同内置断言?
- 6. Nodejs断言没有执行摩卡测试
- 7. 摩卡“形容”没有定义
- 8. 为什么摩卡需要在devDependencies中?
- 9. 摩卡,应该断言,不按预期工作
- 10. 摩卡测试不运行Chai断言使用流星
- 11. 摩卡为什么不能解决这个路径(或模式)?
- 12. 摩卡/应'未定义不是函数'
- 13. 为什么断言:android.net.cts.ListeningPortsTest :: testNoListeningUdp6Ports
- 14. 为什么断言失败
- 15. 为什么断言不相等?
- 16. 为什么Q_ASSERT而不是断言
- 17. 为什么我的typeof检查未定义我的摩卡测试失败?
- 18. 为什么一个= 57 B = 7 R = B%一个断言[R == 7
- 19. 断言继续抛出错误断言错误0 == 1在摩卡测试中,
- 20. 为什么我的结构有一个不完整的定义?
- 21. 如何运行更好断言和摩卡的单元测试?
- 22. 如何提供摩卡断言失败的上下文
- 23. 为什么我不断收到NameError:名字“PS”没有定义
- 24. 为什么要使用摩卡轨道?什么是
- 25. 安装摩卡的TypeScript定义失败
- 26. 为什么摩卡超时与restify和knex一起使用?
- 27. 为什么比较一个constexpr函数的两个参数不是静态断言的一个恒定条件?
- 28. 断言后摩卡流量控制失败
- 29. 如何使用Should.js断言库Phantomjs,摩卡测试框架
- 30. 摩卡,柴:断言对象包括在对象数组
是的,这是令人钦佩的,但为什么默认没有断言框架呢?谁更喜欢没有断言机制? – Ceilingfish
你必须问摩卡团队为什么没有默认。但他们的总体目标不是指定你如何做事,而是让你去做。 –