The RSpec Book: Behaviour Driven Development with RSpec, Cucumber, and Friends

Rspec book

  1. The RSpec Book: Behaviour Driven Development with RSpec, Cucumber, and Friends

主要目录:

RSpec 和 Cucumber 入门

介绍

  • 起源于 TDD
  • 下一步 BDD
  • RSpec
  • Cucumber
  • BDD 整个过程

hello

  • 安装
  • 介绍 RSpec 入门
  • 介绍 Cucumber 入门

描述(describing)功能

  • 介绍 codebreaker
  • 计划第一个发布
  • 计划第一个迭代
  • 回顾总结

Cucumber 的自动功能

  • 步骤及定义
  • 定义步骤的方法
  • 双重测试
  • 回顾总结

通过 RSpec 来描述代码

  • RSpec 介绍
  • Red: 从失败的代码例子开始
  • Green: 让例子通过
  • 重构
  • 回顾总结

添加新的功能

  • 在 Cucumber 中规划处场景
  • 做出对应的修改
  • 回顾总结

算法定义

  • 从一个简单的例子开始
  • 通过重构来移除重复
  • 通过重构来表达意图
  • 回顾总结

有自信的重构

  • 嗅出代码的味道
  • 一次一步走
  • 重构之后的更新 spec
  • 探索性测试
  • 回顾总结

通过 Cucumber 来协作

  • 实验一个新的实现方式
  • 回顾总结

II 行为驱动开发

BDD 的情景

  • 一般传统项目为什么失败
  • 为什么失败
  • 重新定义问题
  • Agile 的代价
  • 回顾总结

Writing Software that matters(什么意思? 写代码那点事儿??)

  • BDD 的描述
  • BDD 的原则
  • 项目的开始
  • 交付的循环
  • 每个 story 里有什么
  • 回顾总结

III RSpec

  • 代码例子
  • 描述它
  • Pending 的例子
  • 钩子:之前,之后还有围绕
  • 帮助方法
  • 共享的例子
  • 嵌套的例子
  • 回顾总结

RSpec::Expectation

  • should, should not 还有 matcher
  • 内建的 matcher
  • 断言 matcher
  • be true in the eyes of ruby

RSpec::Mocks

工具和集成
扩展

IV Cucumber

  • 介绍 Cucumber
  • 详细的东西

V 行为驱动 Rails

  • Rails 里的 BDD
  • Cucumber 和 rails
  • 模拟浏览器
  • 通过 Webrat 和 selenium 自动化浏览器测试
  • Rails 视图
  • Rails 控制器
  • Rails 对象
  • A RubySpec
  • B RSpec 内建的期望
  • C 参考