视图测试与邮件测试指南
1. 视图测试概述
视图测试与控制器和模型测试有着本质的区别。全面测试视图输出不仅极其耗时,而且即便完成了测试,也很难验证视图在浏览器中的实际显示效果。此外,过于详细的视图测试在应用程序外观不断重新设计时,很容易失效。因此,使用 Rails 工具时,最好尝试指定并验证应用程序输出的逻辑和语义结构。
2. 视图测试的目标
成功的视图测试是一门艺术,需要在测试不足(测试价值有限)和测试过度(HTML 设计稍有变动测试就会失败)之间找到平衡。当你有以下需求时,可以创建视图测试:
- 验证视图层是否能无错误运行。这是视图测试的基本要求,确保视图的每个分支都能正常工作,可避免生产部署时的尴尬。
- 验证控制器收集的数据是否在视图中按预期显示。尤其要测试依赖特定数据存在与否的视图逻辑是否正常。
- 验证基于安全的输出。例如,管理员页面可能有进入编辑模式的链接,用户可以编辑自己的帖子但不能编辑其他用户的帖子等。
不过,在 Rails 中进行视图测试时,不应尝试以下操作:
- 验证响应的精确文本或 HTML 标记,因为这容易因随机变动而导致测试失败。
- 验证网站的用户界面外观。即便能在 Rails 中找到自动验证的方法,这种测试也很容易失效,可使用 Selenium 等其他工具进行此类测试。
3. 成功视图测试的关键
视图测试与模型或控制器测试有所不同,更具印象性。为了使视图测试易于管理,需要假设 HTML 符合测试的精神。以下是编写视图测试时的一些指导原则:
- 避免测试 HTML 标签的特定内文本 :如
超级会员免费看
订阅专栏 解锁全文
875

被折叠的 条评论
为什么被折叠?



