ruby-on-rails – Rails测试:固定装置,工厂和魔术数字
发布时间:2020-12-17 03:33:25 所属栏目:百科 来源:网络整理
导读:我有一个应用程序需要相当多的数据(1000条记录)来进行适当的测试.我发现获得一组可测试的,合理的数据的唯一方法是使用我的生产数据库的一个子集.我已将其转换为正常`test / fixtures’位置的YAML灯具. 这有效,但现在我有一堆看似脆弱的测试和断言,这取决于它
我有一个应用程序需要相当多的数据(1000条记录)来进行适当的测试.我发现获得一组可测试的,合理的数据的唯一方法是使用我的生产数据库的一个子集.我已将其转换为正常`test / fixtures’位置的YAML灯具.
这有效,但现在我有一堆看似脆弱的测试和断言,这取决于它们是满足条件X的特定数量的记录… 例 def test_children_association p = Parent.find(1) assert_equal 18,p.children.count,"Parent.children isn't providing the right records" end 这对我来说似乎不是一个好主意,但我不确定是否有更好/可接受的方法来测试需要大量数据层次结构的应用程序. 解决方法
测试中的幻数不是反模式.您的测试需要非常简单,以至于您无需测试它们.这意味着你将拥有一些神奇的数字.这意味着当您更改少量功能时,您的测试将会中断.这很好.
夹具有some problems,但是你可以做一些简单的事情来使它们更容易使用: >只有您的灯具中的基线数据,大多数测试需要但不关心的数据类型.这将涉及预先投入时间,但最好早点承担痛苦,而不是在项目的生命周期中编写糟糕的单元测试.>在测试环境中添加要测试的数据.这提高了测试的可读性,并使您免于在单元测试开始时编写“确保没有人搞砸了灯具”的健全性检查. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容