RN.*_*RN. 3 java junit unit-testing
我有一个简单的CRUD操作需要进行单元测试.这些测试用例适用于DAO层 - 因此所有测试都针对数据库,因此无法进行模拟.
所以我有一个测试用例,用于创建另一个用于更新,另一个用于读取.
我应该对JUnit类中的数据进行硬编码还是将其外部化?
Read TestCase显然需要数据库中的数据.我应该依赖于创建测试用例来设置数据还是使用SQL语句?
什么是最好的做法?
如果你能指出我讨论这个的互联网资源 - 这将是伟大的.
Spring对这类事情提供了极好的支持 - 您希望对"测试"数据库进行单元测试,可以编写脚本以在每个单独的单元测试中重新创建.
最后一句的后半部分是开发可重用和可扩展单元测试的关键 - 对数据库的单元测试不应该被迫依赖于乐观地处于特定状态的数据,或者依赖于先前的单元测试来先运行 - 您需要为每个单元测试重新创建数据库,以便每个测试用例获得数据的"干净"版本.
设置Spring MVC的分步教程实际上有一个关于为数据库类设置单元测试的部分,我认为即使你不使用Spring MVC也是一个有价值的参考 - 你可以使用它作为参考如何设置要从构建脚本创建/初始化的测试数据库,使用Spring容器在每次测试运行时重新加载数据等.
归档时间: |
|
查看次数: |
3441 次 |
最近记录: |