我是一个相当有经验的开发人员,但我完全是 web 和 rails 新手。我正在尝试实现一种市场轨道应用程序。我已经将应用程序开发到我在客户交互流程中遥遥领先的位置,现在我意识到我需要自动化一些东西,因为通过浏览器进行开发/测试会消耗大量时间。
假设我有从页面 A 到页面 B、C、D...G 的客户交互流程。现在我正在开发“H”页面。我知道我可以使用自动化测试工具(例如 Minitest)来自动化整个事情。但是,有时我仍然有我的 rails 训练轮,我喜欢为自己看到从一个状态到另一个状态的数据库状态进展,而不是仅仅相信测试自动化确实在做我所期望的。
我的问题是,有没有办法让 Minitest 从 A -> G 自动化/模拟用户交互流程,然后让我从那里以手动方式接管,这样我就可以在使用我的数据库时单击新开发的浏览器按钮浏览器适当地观看数据库状态进度?
如果不是 - 这是我的猜测 - 我很乐意在集成测试后找到一种检查数据库内容的方法。我的集成测试工作得很好。只是在他们完成后,我希望能够打开我的数据库浏览器并四处寻找,验证各种值以确保数据库中的内容符合我的要求。
另一个可能对我有用的解决方案是,如果我的集成测试中有可以访问 db 值的东西,那么我可以以编程方式验证事情。我想到了一些事情,例如分配如何让您访问集成测试中的实例变量,然后您可以对其进行“断言”调用。
而且,当然,如果我偏离了轨道,并且对于我错过的这类事情有一个“最佳实践”,请告诉我。
我正在使用 Rails 4.2.0 和 Ruby 2.2.2p95