QUnit Vs. Jasmine和TDD比.BDD

Mim*_*ght 27 javascript tdd bdd qunit jasmine

我一直在寻找两个用于在前端进行单元测试的库.

  • QUnit - http://qunitjs.com/

  • Jasmine - http://jasmine.github.io/

    1. 茉莉显然更BDD的重点不是QUnit虽然我可以看到做BDD QUnit通过描述一个行为导向的方式测试.它们都能够在代码单元上运行断言,所以我认为它们都是单元测试.BDD是否与TDD相互排斥,或者您是如何编写它的?

    2. 如果您正在进行行为测试,是否需要进行单元测试?似乎如果你涵盖所有用户故事,你真的不需要知道可测试单元的细节.

    3. 你还喜欢其他任何测试框架吗?除了单元测试之外是否还有其他测试可以让开发人员在前端做什么?

Seb*_*ose 19

  1. BDD和TDD不是互斥的.见Liz Keogh的帖子

  2. 业务利益相关者应该可以理解行为测试.单元测试通常旨在由技术团队成员(开发人员,测试人员等)理解.有关如何使单元测试更具可读性的示例,您应该查看GOOS书籍(尽管示例是Java而不是Javascript).

    此外,如果您尝试使用BDD覆盖所有测试路径,您的业务人员将感到无聊并停止关怀.

  3. 看看Cucumber-JS(黄瓜港).

  • 我希望看到一项研究显示实际阅读BDD测试的业务利益相关者的百分比.我打赌它是一位数. (17认同)
  • 你可能是对的,但如果他们无法理解,他们肯定不会阅读它们.请访问https://www.relishapp.com/GDS/whitehall/docs查看英国政府重新开发其公共网站的在线BDD测试 (3认同)