rspec相关内容
我正在尝试让这些规范在一个项目中发挥作用。有规格设置,但未进行维护。 我有一篇关于request spec 的简单帖子 require 'rails_helper' RSpec.describe 'Cars API', type: :request do let(:organization) { Fabricate(:organization, owner: user) } l
..
我目前正在开发一个Rails中的API端点。如果我需要的数据无效,我希望确保具有正确错误状态的端点响应。我需要一组身份证。其中一个无效值是空数组。 有效 { vendor_district_ids: [2, 4, 5, 6]} 无效 { vendor_district_ids: []} 使用RSpec请求规范 所以我希望有一个请求规范来控制我的行为。 requ
..
我发现其他人发布了很多类似的问题,但没有一个解决方案起作用。 我的/SPEC/REQUESTS/QUIES_SPEC.rb是 require 'rails_helper' RSpec.describe "Questions", type: :request do describe "GET /questions" do it "works! (now write some
..
我正在尝试测试下面模型的BEFORE_UPDATE回调。 型号/option.rb: class Option
..
我正在寻找一种为具有活动存储附件的模型创建工厂的方法 我在this post 中尝试了该方法 与我的工厂 factory :activity_fit_file, class: 'Activity' do association :user, factory: :user activity_type {:cycling} original_activity_l
..
我的食谱的默认食谱只包括几个其他食谱。我知道我可以使用以下命令测试是否包含适当的食谱: expect(chef_run).to include_recipe 'cookbook::recipe_name 但是,当我如下所示地存根INCLUDE_Recipe调用时,这不起作用 Chef::Recipe.any_instance.stub(:include_recipe).with(
..
我的RSpec行为有问题。我尝试为服务编写测试,其中我使用session读取一些值并覆盖此值。 例如我要测试的内容 class CurrentCartService attr_reader :user, :session def initialize(user, session) @user = user @session = session end
..
我正在使用Foreman启动我的Rails开发服务器。我可以将所有环境变量放在.env文件中,这很好。有没有办法对我的测试环境执行类似的操作? 我想设置将用于vcrgem的API密钥,但我不想将API添加到版本控制。除了在启动测试脚本时手动设置环境变量之外,还有什么建议吗? 推荐答案 您可以使用dotenv gem-它的工作方式与Foreman相同,并从.env文件加载。(以及适
..
我有一个 Rails 应用程序,它的行为取决于它所访问的域(例如 www.myapp.com 调用的方式与 user.myapp.com 不同).在生产使用中,这一切正常,但我的测试代码总是看到“www.example.com"的主机名. 有没有一种干净的方式让测试指定它假装访问的主机名? 解决方案 @request.host = 'user.myapp.com'
..
我有一个包含多个场景的场景大纲.我希望我的 Before 挂钩只运行一次,这样我就可以引导我需要针对所有场景运行的 ActiveRecord 对象.问题是如果我使用 之前做# 我的代码在这里结尾 这将在每个场景之前执行.反正有没有为整个大纲运行一次? 解决方案 我认为如果您只是在 features/support 中的文件中创建对象,它们将被持久化: ImportantThing.c
..
我正在通过 The RSpec Book 学习 Rspec + Cucumber.我才刚刚开始,正在开发 Codebreaker 游戏. 其中有一个功能“Codebreaker 开始游戏",它代表用户在 shell 中键入命令并得到两个响应:“欢迎使用 Codebreaker!"和“输入猜测:".这是该功能的外观: 功能:密码破解者开始游戏作为密码破解者我想开始游戏这样我就可以破解密码场景
..
我正在使用 rspec 2.4.0 和 cucumber 0.6.4.我正在运行一个简单的场景(为了这个问题): 场景:简单测试当我测试某些东西时 带步骤定义: 需要'rspec'需要'rspec/expectations'当/^I test something$/时结果 = (1==1)结果.应该是_true结尾 当我运行这个场景时,我遇到了以下问题: #
..
这是一个关于在使用 Ruby 和 Rails 遇到堆栈级别太深 (SystemStackError) 时应该使用什么调试策略的问题. 我在使用 rspec 或 cucumber 时看到这些错误 perrys-MacBook-Pro:pc perry_mac$ 黄瓜堆栈级别太深 (SystemStackError)/Users/perry_mac/.rvm/gems/ruby-1.9.3-p
..
我正在使用 Cucumber、RSpec 和 Factory Girl 来测试我的 Rails 应用程序.但我有几个主要包含 静态 数据的查找表.所以我试图找出在测试时填充这些的最佳方法.在 FactoryGirl 中单独执行它们似乎很乏味,我想远离固定装置.对于开发和生产,我将它们填充到我的 seeds.rb 文件中. 谢谢! 解决方案 使用 Factory Girl .seque
..
..
当我作为一个整体运行我的黄瓜场景时,或者使用以下命令:黄瓜我得到 7 个失败的步骤.当我使用正在进行的标记单独运行它们时,它们可以正常运行. 我不认为这是数据库状态问题.我正在运行事务,我也尝试在没有事务的情况下运行并使用数据库清理器清理数据库......仍然没有帮助. 我尝试运行调试器,但是当我运行命令 cucumber 时它似乎不起作用.它仅在我使用正在进行的工作标签运行时才有效:
..
我运行 Cucumber 和 RSpec 测试的 rake 任务总是使用我的 development 环境. 以下是相关配置文件: RAILS_ROOT/config/environments/cucumber.rb # 编辑后果自负 - 建议重新生成此文件# 将来当您升级到新版本的 Cucumber 时.# 重要提示:已知将 config.cache_classes 设置为 fal
..
我恰好是 Ruby Inside 的订阅者,因为我对 Rails 特别感兴趣.昨天,Rails 的创建者 David Heinemeier Hansson 几乎说他只是在使用测试/单元.我会理解,因为它是 Rails 内部的,但他似乎给出了强烈的意见.他认为 RSpec 和 Cucumber 是不必要的复杂. 我通常不会太在意,但这取决于谁说了什么.我非常尊重汉森,他的意见让我思考.当我开始
..
有没有办法在不使用 Cucumber 的情况下使用 Rspec 进行集成测试?我更喜欢只使用普通的旧 Webrat.谢谢. 解决方案 最新版RSpec-Rails (1.2.7) 现在有集成支持.升级然后开始将规范添加到规范/集成或使用“集成规范"生成器.在 spec/spec_helper.rb 中配置 Webrat 就可以了!
..
我想在 Ruby On Rails 上启动 BDD 我应该学习什么?我对 BDD、RSpec 或 Cucumber 一无所知.最好的学习方法是什么?教程?涵盖诸如“我应该测试什么行为?"之类的东西.等等 谢谢! 解决方案 RSpec specific;我保留这些链接以供参考(对于初学者来说可能是提前的).但只是想和你分享.(其中一些可能已经过时,但我认为仍然值得一读) Rspe
..