在TDD中创建测试数据的最佳位置在哪里?

Ana*_*liy 4 c# nunit unit-testing

我使用NUnit集成测试.我正在尝试测试以确保用户无法使用现有电子邮件创建帐户.(test@example.com)

我需要在数据库中有测试数据(使用test@example.com电子邮件帐户).

我可以在测试函数或sql脚本中创建此帐户(并在集成测试之前运行它).

创建此测试数据的最佳位置在哪里?

Pau*_*sik 5

这两种选择都没有错,但有很多方法可以扩展和巩固你的策略:

这些解决方案都不是相互排斥的.我会推荐最后一项(特别是可插拔提供程序),然后在对象模拟或虚拟但质量数据库测试数据之间进行选择.