1.Need to install gem: rspec, rspec-rails,
plugin: machinist(to create fake records for test)
rspec-on-rails-matchers(provide method: belong_to has_many for model test)
2.Need to install gem: faker, and write bluepoints.rb in spec directory,like follow
require 'faker'
Sham.name { Faker::Name.name }
Sham.email { Faker::Internet.email }
Sham.street_no { (1..100).map.to_a.rand }
Sham.street_name { Faker::Address.street_name }
Sham.street_type(:unique => false){ rand(2) == 1 ? 'street' : 'road' }
Sham.age(:unique => false){ (1..100).map.to_a.rand }
Sham.gender(:unique => false){ rand(2) }
Sham.suburb_id(:unique => false){ (1..100).map.to_a.rand }
Sham.birthday do
Date.civil((1990...2009).to_a.rand,
(1..12).to_a.rand,
(1..28).to_a.rand)
end
Person.blueprint do
home_address { Address.make }
work_address { Address.make }
name { Sham.name }
email { Sham.email }
age { Sham.age }
birthday { Sham.birthday }
gender { Sham.gender }
end
Address.blueprint do
Person
street_no { Sham.street_no }
street_name { Sham.street_name }
street_type { Sham.street_type }
suburb_id { Sham.suburb_id }
end
Modify spec_helper.rb
require File.expand_path(File.dirname(__FILE__) + "/bluepoints.rb")
see the details
http://toolmantim.com/articles/fixtureless_datas_with_machinist_and_sham
3.Write spec.rb file to test.
分享到:
相关推荐
标题 "自动化生成支持cucumber,Rspec的Rails(持续更新中)" 暗示了这个压缩包文件的内容可能涉及使用Cucumber和RSpec这两种自动化测试工具在Ruby on Rails框架下的集成和配置。Cucumber是一种行为驱动开发(BDD)的...
Ruby on Rails,简称Rails,是基于Ruby编程语言的一个开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率和代码的可读性。Rails以其“约定优于配置”(Convention over Configuration)...
9. **测试驱动开发(TDD)**:Rails鼓励采用TDD,提供了测试框架如RSpec和MiniTest,确保代码质量。 10. **Gem包管理**:Ruby的Gem系统使得安装和管理第三方库变得简单,如Devise用于用户认证,Paperclip或...
- RSpec:一种流行的Rails测试框架,用于行为驱动开发。 - MiniTest:内置的测试库,包括unit测试和functional测试。 6. **Rails开发工具**: - Bundler:管理Gem依赖,确保项目依赖的一致性。 - Rails Console...
11. **测试(Testing)**:Rails鼓励TDD(Test-Driven Development),提供了丰富的测试工具,如RSpec、Cucumber和MiniTest,确保代码的质量和可靠性。 12. **生成器(Generators)**:Rails的生成器可以帮助快速...
Rails内置了Test::Unit和RSpec等测试框架,开发者可以通过编写测试先于代码来确保程序的正确性。测试覆盖包括单元测试、集成测试和功能测试。 Rails还提供了丰富的插件和gem库,如Devise用于身份验证,CanCanCan...
Rails还提供了丰富的内置功能,如测试框架Rspec和Capybara,用于编写自动化测试;以及Asset Pipeline,用于管理CSS、JavaScript和其他前端资源。书中会讲解如何构建和运行测试,确保应用的稳定性和质量。此外,还会...
《Ruby on Rails for Dummies》是一本专门为初学者设计的Ruby on Rails教程,它旨在帮助新手快速理解并掌握这个强大的Web开发框架。Ruby on Rails(简称Rails)是基于Ruby编程语言构建的一个开源Web应用程序框架,它...
RSpec Rails示例 一个以Rails应用程序形式的RSpec速查表。 了解如何从模型代码库中专业测试Rails应用程序对于那些想知道如何使用RSpec测试Rails应用程序的开发人员来说,这是一个简短而全面的参考。 在这里,您将...
Ruby on Rails 4 Tutorial 是一本深受开发者欢迎的书籍,它详细介绍了如何使用Ruby on Rails这一强大的Web开发框架。Ruby on Rails(简称Rails)是基于Ruby语言的开源框架,以其“约定优于配置”(Convention over ...
8. **test**目录:包含测试用例,Rails支持多种测试框架,如RSpec和Test::Unit,用于确保代码质量。 9. **log**目录:存放应用的日志文件。 通过分析这个`sample_app-master`,你可以跟随教程逐步了解Rails的每个...
Ruby on Rails,简称Rails,是一种基于Ruby语言的开源Web应用程序框架,它遵循MVC(Model-View-Controller)架构模式,旨在使Web开发过程更加高效、简洁。本篇将通过一个入门实例,深入探讨Rails的基本概念和核心...
6. 测试驱动开发(TDD):Rails支持测试框架如RSpec和MiniTest,开发者可以通过编写测试用例确保代码质量。在线考试系统的功能,如用户登录、选择考试、提交答案等,都应有相应的测试覆盖。 7. Gems和插件:Rails...
8. **Testing**:Rails内置了测试框架,如RSpec和Test::Unit,鼓励开发者采用TDD(测试驱动开发)和BDD(行为驱动开发)方法。 9. **Gemfile和Bundler**:Gemfile用于定义项目依赖的Ruby gems,Bundler则管理这些...
7. **测试驱动开发(TDD)**:Rails鼓励使用测试来确保代码质量,如使用RSpec或MiniTest进行单元测试和集成测试。 8. **Gem和依赖管理**:Ruby使用Gem来管理库和插件,Bundler则用于管理项目所依赖的Gem版本,确保...
Rails鼓励开发者使用测试来确保代码质量,因此,Rspec和Capybara等测试工具的使用方法是重要的一环。另外,书中可能会讲解如何进行数据库查询优化,使用缓存提升应用性能,以及如何进行并发处理和部署策略。 在实战...
标题 "在Rails中使用RSpec生产CHM文档" 暗示了这个话题是关于如何在Ruby on Rails(简称Rails)框架中使用RSpec测试工具来创建帮助文档,特别是以CHM(Microsoft Compiled HTML Help)格式。CHM文件是一种常见的...
此外,Rails还内置了测试框架如RSpec和MiniTest,鼓励TDD(测试驱动开发)和BDD(行为驱动开发)。开发者可以通过编写测试来确保代码质量。 在2014年的Rails教程中,你可能会学习到如何设置开发环境,安装Rails,...