Oracle utPLSQL和现有数据?

Oracle utPLSQL和现有数据?,oracle,unit-testing,plsql,Oracle,Unit Testing,Plsql,我正在努力部署utPLSQL以提高当前项目的质量。问题是目前有近1000个数据库表和近800个PL/SQL包。另外,我对使用utPLSQL框架非常陌生,但在SQL和PL/SQL方面有一些经验 我不能依赖现有数据在测试运行期间和测试之间保持不变,以产生相同的测试结果,因为有几十个开发人员不断更改数据。我要寻找的是基于现有生产表在tester模式中创建临时测试表,用测试数据填充它们,并生成PL/SQL代码,以便在运行测试时使用这些测试表。有可能吗?如果没有,我应该使用什么方法 我一直在阅读Kevin

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

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

我一直在阅读Kevin McCormack的文章,但问题是我不能花太多时间阅读并试图找到解决方案,否则使用utPLSQL框架的想法将被我所在的组织封存


非常感谢任何帮助。

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

谢谢你,鲍勃。你的回答很有帮助。@Bob的方法很正确。您还可以使用
设置
拆卸
过程来帮助将此数据工作与实际测试代码分开。听起来您的组织使用服务器进行开发,而不是使用工作站。除非开发人员拥有自己的私有数据库,并且代码“存在”在版本控制文件中,否则可能没有添加单元测试的好方法。Bob的答案可能会有所帮助,但在许多系统中,不可能在单个事务中进行有意义的测试。