使用Mocha& amp;组织测试。 Should.js

时间:2013-06-05 07:23:21

标签: node.js unit-testing bdd mocha should.js

我是使用摩卡和麦克风进行单元测试的新手。 should.js。我正在使用Mocha的BDD来测试我的应用程序。我正在测试的应用程序有不同的组件,如帐户,产品和订购。在将代码移动到git存储库之前,我想测试应用程序的所有方面。我为所有组件提供了不同的测试文件。例如,account.js为account,order.js为order&等等。

我想针对临时测试帐户测试所有组件。所以流程是:

  1. 创建测试帐户
  2. 测试与帐户相关的所有功能(更新个人资料,更改密码等)
  3. 测试帐户产品的所有功能
  4. 测试帐户订单的所有功能
  5. 删除测试帐户&所有与之相关的信息
  6. 我的问题是如何在执行其他测试之前确保创建临时帐户?

    由于我在不同的文件中测试案例,我如何确保它们以与上述相同的顺序执行?还有其他更好的方法来测试应用程序吗?

    感谢。

1 个答案:

答案 0 :(得分:7)

您的单元测试应该是独立的:执行一个测试不应该影响其他测试的执行。使用Mocha,我通过让每个测试文件require成为具有beforeEach函数的实用程序文件来执行此操作,该函数将清除数据库,为每个单元测试建立连接等。还有一个afterEach函数可以在每次单元测试后清理和断开连接。

如果您要运行的每个单元测试都需要测试帐户,则可以将测试帐户设置为类似的顶级beforeEach功能。否则,您可以在所需的Mocha beforeEach块中的describe函数中设置测试帐户。