【问题标题】:Thoughts on unit test automation关于单元测试自动化的思考
【发布时间】:2012-12-12 09:50:36
【问题描述】:

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

我有两个选择:

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

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

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

还有其他选择吗?谢谢

【问题讨论】:

    标签: unit-testing testing


    【解决方案1】:

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

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

    查看链接 herehere

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

    【讨论】:

    • 我猜它更多的是#1,除了你只创建一次基线数据并在测试开始时强制它。
    猜你喜欢
    • 1970-01-01
    • 2016-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-13
    • 2013-11-17
    相关资源
    最近更新 更多