第一章
p5
软件项目中因语言分界线的存在,团队中的领域专家和程序员指南进行低质量的交流。一种普遍存在的、可以在对话文档和代码中使用的语言大大降低了误解几率。在开发之前就进行测试可以大大降低误解渗入代码库的几率。
cucumber实现了验收测试的真正价值:作为沟通和协作工具,真正可以理解需求。不仅仅是测试,而是验收规范。
p6
活文档
文档不是只写一次就过时的东西,而会反映项目真实的状态。测试信息集中可以节省保持其与代码和文档同步的时间,也可以避免出现团队成员理解偏差的个人版本。
p7
浏览器自动化库Capybara
执行场景中没有错误则该场景标记通过,如果有步骤失败则该场景标记为失败,并转移到下一场景,最终打印结果。
第二章
关键字:Feature,Scenario,Given,When,Then
p17
When /^the calculator is run$/ do
@output = `ruby calc.rb #{@input}`
raise('Command failed!') unless $?.success?
end
第三行:检查命令是否成功,失败将引发错误
格式化输出: --format progress