Logo
☆☆☆☆☆
0.0
Advanced
27h 10m

使用 Rails 进行测试的基础知识

深入探究测试驱动开发(TDD)流程,通过为你的 Ruby on Rails 应用编写并运行自己的测试。你不仅将掌握 Ruby 和 Rails 测试的基础知识,还将学会如何在日常编码实践中应用这些方法。探索并实践 RSpec 和 Minitest 等工具,让应用开发更加高效和稳健。完成学习后,你将建立起坚实的 TDD 基础,并具备将应用测试能力提升到更高水平的准备。

18 Lessons
Included in Subscription Plan
Personalized Learning
Powered by AI
使用 Rails 进行测试的基础知识
深入探究测试驱动开发(TDD)流程,通过为你的 Ruby on Rails 应用编写并运行自己的测试。你不仅将掌握 Ruby 和 Rails 测试的基础知识,还将学会如何在日常编码实践中应用这些方法。探索并实践 RSpec 和 Minitest 等工具,让应用开发更加高效和稳健。完成学习后,你将建立...

WHAT YOU'LL LEARN

理解测试驱动开发的基本原理

Content

18 Lessons • 0 Quizzes • 0 Challenges

简介
  1. 1

    学习目标与先修要求

  2. 2

    Minitest 与 RSpec 对比

测试驱动的寓言
  1. 1

    测试驱动开发(TDD)的优势

  2. 2

    测试驱动设计

  3. 3

    TDD(测试驱动开发)有哪些好处?

  4. 4

    当测试驱动开发需要帮助时

  5. 5

    总结

什么样的测试才算得上优秀?
  1. 1

    导论

  2. 2

    成本与价值

  3. 3

    简单明了:优质测试的第一个特点

  4. 4

    定义清晰:有价值测试的第二个特性

  5. 5

    独立性:优质测试的第三大特性

  6. 6

    快速:有价值测试的第四项品质

  7. 7

    真实:有价值测试的第五个品质

  8. 8

    总结

测试驱动开发基础
  1. 1

    基础设施

  2. 2

    安装 RSpec

  3. 3

    从哪里开始?

  4. 4

    RSpec 和 Rails 功能

  5. 5

    RSpec 内置匹配器

  6. 6

    运行测试

  7. 7

    让测试通过

  8. 8

    第二个测试

  9. 9

    期望与匹配器(checkpoint)

  10. 10

    回到任务

  11. 11

    添加一些数学运算

  12. 12

    第一次约会

  13. 13

    使用时间数据

  14. 14

    总结

测试模型
  1. 1

    在模型测试中我们可以做什么?

  2. 2

    TDD元流程

  3. 3

    重构模型

  4. 4

    合并重复代码

  5. 5

    找出缺失的抽象

  6. 6

    关于每测试用例的断言说明

  7. 7

    测试 Rails 提供的功能

  8. 8

    测试 ActiveRecord 查找方法

  9. 9

    测试共享模块和 ActiveSupport 混入

  10. 10

    编写 RSpec 匹配器

  11. 11

    总结

测试驱动的Rails
  1. 1

    让我们来写一些 Rails 吧

  2. 2

    端到端测试

  3. 3

    待测试

  4. 4

    创建 ActiveRecord 模型

  5. 5

    日子充满活力

  6. 6

    遵循工作流程

  7. 7

    重构为单一断言的测试用例

  8. 8

    谁掌控着控制者?

  9. 9

    带视图的测试

  10. 10

    失败测试

  11. 11

    总结

向测试中添加数据
  1. 1

    开始测试数据

  2. 2

    问题是什么?

  3. 3

    夹具

  4. 4

    加载测试数据

  5. 5

    为什么测试夹具(Fixtures)会带来麻烦?

  6. 6

    工厂

  7. 7

    基本工厂定义

  8. 8

    基本工厂创建

  9. 9

    关联与工厂

  10. 10

    工厂中的重复管理

  11. 11

    日期和时间

  12. 12

    总结

使用测试替身作为模拟对象和存根
  1. 1

    问题

  2. 2

    测试桩定义

  3. 3

    创建桩函数

  4. 4

    部分桩函数

  5. 5

    模拟期望

  6. 6

    使用模拟(Mocks)来模拟数据库故障

  7. 7

    使用模拟对象来指定行为

  8. 8

    更多期望注解

  9. 9

    使用模拟对象的技巧(concept)

  10. 10

    总结

使用Capybara和Cucumber进行集成测试
  1. 1

    集成测试与系统测试指南

  2. 2

    设置 Capybara

  3. 3

    使用特性测试来构建一个功能

  4. 4

    Capybara API:交互

  5. 5

    Capybara API:查询

  6. 6

    在 RSpec 系统测试中应该测试的内容

  7. 7

    自外而内的测试

  8. 8

    让Capybara测试通过

  9. 9

    回顾

  10. 10

    设置 Cucumber

  11. 11

    编写 Cucumber 特性

  12. 12

    高级Cucumber

  13. 13

    Cucumber 值得使用吗?

  14. 14

    总结

测试 JavaScript:集成测试
  1. 1

    使用 Capybara 进行 JavaScript 的集成测试

  2. 2

    让我们来谈谈驱动程序

  3. 3

    让测试通过

  4. 4

    开发模式下的 Webpack

  5. 5

    总结

单元测试 JavaScript
  1. 1

    开始使用 JavaScript 进行单元测试

  2. 2

    设置 JavaScript 单元测试

  3. 3

    使用 Karma 模块进行 JavaScript 单元测试

  4. 4

    编写一个示例测试

  5. 5

    JavaScript 中的 TDD(测试驱动开发)

  6. 6

    Jasmine 匹配器

  7. 7

    测试 Ajax 调用

  8. 8

    使用 testdouble.js

  9. 9

    创建测试替身

  10. 10

    指定测试替身的行为

  11. 11

    验证测试替身

  12. 12

    将 JavaScript 与服务器代码连接

  13. 13

    总结

测试 Rails 显示元素
  1. 1

    入门

  2. 2

    测试路由

  3. 3

    测试辅助方法

  4. 4

    测试辅助方法块

  5. 5

    测试控制器和请求

  6. 6

    模拟请求

  7. 7

    在请求规范中可以期待的内容

  8. 8

    较旧的 Rails 控制器测试

  9. 9

    测试邮件发送功能

  10. 10

    测试视图和视图标记

  11. 11

    视图测试的作用是什么?

  12. 12

    使用展示器

  13. 13

    测试后台任务与 ActionCable

  14. 14

    总结

Minitest
  1. 1

    Minitest 入门

  2. 2

    Minitest 基础知识

  3. 3

    运行 Minitest

  4. 4

    Minitest 设置

  5. 5

    Mocha

  6. 6

    系统测试及其他

  7. 7

    Minitest 集成测试

  8. 8

    Minitest 辅助测试

  9. 9

    Minitest 和路由

  10. 10

    摘要

安全测试
  1. 1

    安全测试入门

  2. 2

    用户身份验证与授权

  3. 3

    添加用户和角色

  4. 4

    限制访问

  5. 5

    更多访问控制测试

  6. 6

    使用角色

  7. 7

    更多角色测试

  8. 8

    防止表单被篡改

  9. 9

    大量赋值测试

  10. 10

    其他安全资源

  11. 11

    总结

测试外部服务
  1. 1

    开始使用外部服务

  2. 2

    外部测试策略

  3. 3

    服务集成测试

  4. 4

    引入 VCR

  5. 5

    VCR 和 RSpec

  6. 6

    VCR 和 Minitest

  7. 7

    VCR 和 Cucumber

  8. 8

    客户端单元测试

  9. 9

    为什么要使用适配器?

  10. 10

    适配器测试

  11. 11

    测试错误情况

  12. 12

    冒烟测试与 VCR 选项

  13. 13

    世界即服务

  14. 14

    总结

故障排查与调试
  1. 1

    开始学习故障排查与调试

  2. 2

    简单的打印语句

  3. 3

    Git 二分查找

  4. 4

    RSpec 或 Minitest 二分查找

  5. 5

    Pry

  6. 6

    基本 Pry 调试

  7. 7

    使用 Pry 调试测试失败

  8. 8

    常见的 Rails 陷阱

  9. 9

    总结

运行更小的测试组与更快的测试
  1. 1

    开始运行较小的测试组

  2. 2

    运行较小的测试组:RSpec

  3. 3

    在 Minitest 中运行较小的测试组

  4. 4

    使用 Cucumber 运行较小的测试组

  5. 5

    在后台运行 Rails

  6. 6

    使用 Spring

  7. 7

    Spring 框架的优势

  8. 8

    使用 Guard 自动运行测试

  9. 9

    通过绕过 Rails 提升测试速度

  10. 10

    为什么速度很重要

  11. 11

    为什么与 Rails 分离是有用的

  12. 12

    Rails 测试处方,别用 Rails

  13. 13

    在 Minitest 中绕过 Rails

  14. 14

    无需 Rails 的工作流测试

  15. 15

    运行无 Rails 的测试

  16. 16

    加快测试的建议

  17. 17

    摘要

测试遗留代码
  1. 1

    什么是遗留代码?

  2. 2

    设定期望

  3. 3

    开始接触遗留代码

  4. 4

    黑盒测试与白盒测试

  5. 5

    依赖移除

  6. 6

    旧数据库、测试与使用

  7. 7

    使用测试替身消除依赖

  8. 8

    寻找路径

  9. 9

    不要回头

  10. 10

    结论

Certificate of Completion

Showcase your accomplishment by sharing your certificate of completion.

Course Author:Anonymous User

Reviews

Read reviews from students who have taken this course and share your own experience.

Reviews & Comments (0)