【问题标题】:How to test postgres trigger functions for various test cases in rails?如何测试rails中各种测试用例的postgres触发功能?
【发布时间】:2010-11-15 05:11:25
【问题描述】:

我有 Rails 应用程序,我使用 postgresql 作为数据库。当应用程序数据发生更改时,我使用触发器函数在数据库中进行一些更改。但是我对如何使用测试用例测试触发功能没有一个好主意...

【问题讨论】:

    标签: ruby-on-rails function postgresql triggers


    【解决方案1】:

    我也遇到了类似的情况。我最终编写了涉及直接数据库插入/更新/删除语句的单元测试,以及直接选择语句来验证更改。

    作为提示,请考虑编写一些测试,一次操作多行,并验证返回的受影响行数是否有效。根据我的经验,后者有在事情复杂时揭示缺点(崩溃、竞争条件等)的诀窍。

    【讨论】:

      【解决方案2】:

      为什么不简单地执行与生产应用程序相同的操作?

      例如如果您的触发器在插入和更新时增加了列值,只需为这些事件编写一个测试,并通过检索并检查该值是否正确递增。因此,如果在插入操作之前列值为“3”,之后为“4”,则说明触发器已正确触发。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-04-11
        • 2011-04-04
        • 2012-05-30
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多