oracle - PL/SQL 的单元测试

标签 oracle testing plsql

<分区>

我想问一下您是否在您的数据库上编写/进行了任何单元测试,如果是,您有什么经验? 这些测试值得付出努力吗?您只测试高级程序还是还测试功能?最佳做法是什么?

最佳答案

测试 PL/SQL 或任何数据库的最佳实践:

  • 软件 101 - 越早发现错误,修复它的成本就越低。按照这句格言,每个投入生产的代码都应该经过测试,PL/SQL 也不异常(exception)。测试总是值得付出努力的——没有歧义
  • 数据库测试应该在两个层面上进行——针对数据和关于数据
  • 对于数据 - 这包括加载数据的指标和流程 - 例如 - 定义样本数据集并计算执行测试用例后目标表中的预期计数。
  • 其次是性能测试用例 - 此测试过程例如 - 如果您加载完整的生产集,需要多长时间。同样,您不想在生产中发现性能问题
  • 关于数据 - 这是更多的业务测试,加载的数据是否符合预期的功能 - 例如 - 如果您将销售代表汇总到他们的母公司,那么公司和销售代表之间的一对多关系在之后是否有效你运行测试用例。
  • 总是创建一个测试查询,它会产生一个数字,例如 - 选择与任何公司无关的销售代表的数量。如果计数 > 0 则失败
  • 最好将测试用例、它们的结果、测试查询和实际结果放在一个表中,以便您可以查看它们并在需要时进行切片和切 block 。
  • 您可以编写一个 SP 来自动运行表中的测试查询,这很容易重复,甚至可以嵌入到批处理或 GUI 屏幕中

关于oracle - PL/SQL 的单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22334318/

相关文章:

mysql - 从表中获取仅出现在 'IN' 子句中的值

sql - 如何利用SQL(Oracle)来计算字符串的大小?

java - OAF 如何将带有搜索字段的高级表添加到标准现有页面(EBS 12.1)?

java - 如何禁用 JPA 2 回调方法和实体监听器

java - 选择将 Oracle PL/SQL 迁移到 Java 类/EJB

plsql - 关于程序,哪两种说法是正确的?

sql - 什么是编写 Oracle SQL 的优质开发环境?

SQL 错误 : ORA-00907: missing right parenthesis 00907. 00000 - "missing right parenthesis"

android - Cucumber:是否可以从 Android 设备上的文件夹中读取 .feature 文件?

unit-testing - 需要帮助区分模拟和测试驱动程序