1

假设您正在测试一个复杂的函数或一个复杂的存储过程。您如何执行自动化?

我有两个选择:

  1. 基线测试:
    我准备了一些输入数据,我首先手动运行测试,然后我得到输出数据。检查后,我认为输出数据是正确的。然后我将输出数据用作“基线数据”。在后面的测试中,我将输出数据与“基线数据”进行比较,如果有变化,它们可能是错误或其他。

  2. 测试人员以另一种方式实现功能或存储过程。对于测试,它比较测试人员功能的输出和开发人员功能的输出。

选项 1 更容易在自动化中实现。
选项 2 更难,因为测试人员需要重新编写函数。

还有其他选择吗?谢谢

4

1 回答 1

0

一般来说,单元测试可能不应该测试数据库是否返回正确的数据。有太多可能出错的地方。数据库可能已关闭,用户可能会在您重置基线之前终止测试。这更像是一个集成测试而不是单元测试。

我通常使用带有模拟数据的模拟数据访问层进行测试。

在此处此处查看链接

综上所述,当我必须创建从数据库中提取数据的单元测试时,我通常对测试进行编程以使用测试数据更新数据库,然后运行我的数据库调用/存储过程并针对该基线进行测试。

于 2012-12-12T01:50:36.760 回答