utPLSQL和现有数据?

时间:2014-12-16 14:45:27

标签: oracle unit-testing plsql

我正在努力部署utPLSQL以提高当前项目的质量。问题是目前有近1000个数据库表和近800个PL / SQL包。另外我使用utPLSQL框架非常新,但在SQL和PL / SQL方面有一些经验。

我不能依赖现有数据在测试运行期间和之间保持不变,以便产生相同的测试结果,因为有数十名开发人员不断更改数据。我正在寻找的是在测试器模式中基于现有生产表创建临时测试表,用测试数据填充它们并使PL / SQL代码在运行测试时使用这些测试表。它甚至可能吗?如果没有,我应该采用什么方法?

我一直在阅读 Kevin McCormack 的文章Continuous Integration with Oracle PL/SQL, utPLSQL and Hudson,但问题是我不能花太多时间阅读并试图找到解决方案之前使用utPLSQL框架的想法将被我正在为之工作的组织封存。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

当使用utPLSQL时,我让每个测试创建它需要的任何数据,对创建的数据执行测试,然后在结束时回滚事务,从而有效地从数据库中删除测试数据。这需要额外的时间,因为我必须弄清楚实际需要创建哪些数据,但确保数据在需要时存在并且在不需要时不会挂起 - 并且测试不依赖于数据可能存在也可能不存在。 YMMV。