7

我是使用 Mocha 和 should.js 进行单元测试的新手。我正在使用 Mocha 的 BDD 来测试我的应用程序。我正在测试的应用程序具有不同的组件,例如帐户、产品和订单。在将代码移动到 git 存储库之前,我想测试应用程序的所有方面。我对所有组件都有不同的测试文件。例如,account.js 用于帐户,order.js 用于订单等。

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

  1. 创建测试账户
  2. 测试与帐户相关的所有功能(更新配置文件、更改密码等)
  3. 测试账户产品的所有功能
  4. 测试账户订单的所有功能
  5. 删除测试帐户及其相关的所有信息

我的问题是如何确保在执行其他测试之前创建临时帐户?

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

谢谢。

4

1 回答 1

7

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

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

于 2013-06-20T05:01:10.413 回答