JavaScript 单元测试

标签 javascript unit-testing testing functional-testing

我有一个 250 行以内的 javascript 应用程序,并且想为其添加测试。每当我进行微小的更改时,我都必须手动运行至少 10 个案例的测试,我希望将其自动化。

我本可以按照不同帖子中的建议选择框架,但我想要的解决方案是最小的摩擦和代码库。用于单元测试的单个文件之类的东西可能会起作用。

有没有一种方法可以在不使用任何框架的情况下使用 JS 进行测试?我想同时编写单元测试/功能测试。或者,如果框架是唯一的选择,那么在现有代码的插件易用性+学习曲线方面,哪些框架是首选。

最佳答案

我会选择一个框架。虽然您的用例现在可能很简单,但您可能会发现自己处于一个 future 需要更多功能的项目中。对于您认真使用的任何语言,您都应该熟悉至少一种测试框架/库。构建系统和包管理也是如此。

对于javascript,我只使用过mocha 。它非常全面,易于学习,可以在浏览器中或与节点一起使用,并且测试实际上看起来非常干净且易于阅读。

另外,使用mocha,你可以选择自己的断言库,我使用chai 。它在构建时考虑了 tdd 和 bdd,并且它使编写断言感觉更像是编写自然句子而不是代码。当然,您仍然可以使用 js 环境提供的任何默认断言工具(如果有)。

关于JavaScript 单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29375265/

相关文章:

javascript - 无法在 Python 中解码来自 Javascript 的 JSON 响应

Android 单元测试和接口(interface)

javascript - 如何以编程方式单击打开 Javascript 窗口的小书签并验证窗口的内容?

两个或多个设备/用户之间的 Android 自动化测试

android - 如何对扩展 AndroidViewModel 的 ViewModel 进行单元测试。构造函数中的应用程序有问题

javascript - 在nodejs中提取表单数据

javascript - 让 turn.js 使用类而不是 id

javascript - 更改标题标签(选项卡)背景颜色

java - 将 WebTestClient.BodyContentSpec 转换为 JSON 对象

c# - 使用 ReSharper,如何在长时间运行的单元测试期间显示调试输出?