rspec相关内容

使用 I18N 的基本设计规范

我是 RSpec 的新手,正在尝试编写一个简单的测试来显示 Devise 正在工作.我随机选择了一个页面,想编写一个测试,显示未登录的用户被重定向到/users/sign_in. describe OrgsController do描述“未登录时获取索引"做它“重定向到 new_user_session_path" 做用户 = FactoryGirl.create(:user)用户确认!登录用户 ..
发布时间:2022-01-02 10:05:24 其他开发

Capybara 方法未定义

我无法让水豚工作.我使用的是水豚 2.0.0 我收到此错误 失败/错误:访问“/users/sign_in"无方法错误:#的未定义方法`visit' 关于这个规范 spec/requests/forgot_password_spec.rb 描述“忘记密码"做它“将用户重定 ..
发布时间:2022-01-02 10:04:58 其他开发

Capybara、Devise、CanCan 和 RSpec 集成测试:有效登录 302 重定向到 example.com

更新:请参阅文章末尾,了解规格现在如何工作,因为我在规格/请求而不是规格/控制器中有我的规格.仍然想知道如何获得有效的登录用户以与我的控制器进行集成测试. 我第一次与 Devise 和 CanCan 合作,但在进行最基本的集成测试时遇到了困难,我正在验证登录用户是否......好吧......登录.我已阅读无数关于 Devise 和 RSpec 集成测试的帖子和答案(即通过直接通过 http ..
发布时间:2022-01-02 10:04:41 其他开发

从字符串编译 ERB 代码时出错

我正在为我的视图助手 (Rails 4.0) 编写一些测试,并尝试在执行它的字符串中编译 ERB 代码.但是,为了简单起见,我在这里使用了 rails 表单助手中的常用方法,但收到了相同的错误: 失败/错误:ERB.new(template).result语法错误:(erb):1: 语法错误,意外的 ')'...out.concat(( field_set_tag do ).to_s);_erb ..
发布时间:2022-01-02 10:04:26 其他开发

如何写下 rspec 来测试救援块.?

我有这样的方法 def 类名定义方法名称一些代码救援一些代码和错误信息结尾结尾 那么,如何写下 rspec 来测试救援块..? 解决方案 如果你想拯救,就意味着你希望 some code 引发某种异常. 您可以使用 RSpec 存根 伪造实现并强制出错.假设执行块包含一个可能引发的方法 def method_nameother_method_that_may_raise救援 = ..
发布时间:2022-01-02 10:04:12 其他开发

在控制器测试中存根监狱长

我在测试控制器和使用 Warden 时遇到问题. 所有示例都指向存根 request.env['warden'].当我调用 env['warden'] 时,这会导致我的控制器出现问题,然后返回 nil. 举个粗略的例子,使用这个: request.env['warden'] = double(Warden, :authenticate => nil,:认证!=>零,: 认证?=>错误 ..
发布时间:2022-01-02 10:04:04 其他开发

如何配置 Poltergeist 或 PhantomJS 不跟随重定向?

我有一些测试要求 JS 驱动程序不遵循重定向.是否可以配置 Poltergeist 来执行此操作? 我注意到可以使用命令行界面向 PhantomJS 传递命令,所以也许这是另一种方法? 解决方案 我对 Poltergeist 不熟悉,所以我只回答 PhantomJS. 您只需要两个事件处理程序 page.onResourceRequested 和 page.onResource ..
发布时间:2022-01-02 10:03:57 其他开发

minitest/spec 中 rspec 的“它应该……",focus: true do 的等价物是什么?

在使用 rspec 的项目中的测试中,当我只想专注于一个或几个特定测试用例时,我经常在开发时使用“焦点"以节省运行所有测试. 在 Minitest(在这种情况下使用规范语法扩展)中,我找不到等价物. 在rspec 它“应该可以正常工作",focus: true do# 东西结尾 Minitest 中的等价物是什么? 解决方案 安装 minitest-focus gem,将 re ..
发布时间:2022-01-02 10:03:49 其他开发

“鉴于我已登录"的 Cucumber 步骤定义

我有一个黄瓜步骤:鉴于我已登录 我不明白我应该如何将它实现为步骤定义. 有人能给我指出正确的方向、教程、博客等. 解决方案 这是我的做法. 给定/^我有一个\s+用户 "([^\"]*)" 电子邮件 "([^\"]*)" 和密码 "([^\"]*)"$/do |用户名、电子邮件、密码|@user = User.new(:email => email,:用户名=>用户名,:密码 ..
发布时间:2022-01-02 10:03:33 其他开发

Capybara + RSpec 只能看到控制器规格中的空白页.为什么?

我正在尝试为一个简单的控制器编写控制器规范.但是,Capybara 没有看到任何页面内容.但是,在我的浏览器中查看该站点的页面效果很好.我做错了什么? T.汉克斯! 我的控制器规范 我的 spec_helper.rb 我的 Gemfile 解决方案 您需要明确告诉您的控制器规范您希望它呈现视图以使其工作.将您的规范更新为如下所示: 需要'spec_helper'描 ..
发布时间:2022-01-02 10:03:21 其他开发

使用 RSpec 和 Capybara 检查图像和网站图标的存在

是否有使用 rspec 和水豚检查图像和网站图标是否存在的好方法? 我可以检查网站图标和图像的 DOM,但我希望也能够检查这些图像是否加载.rspec 和水豚可以做到这一点吗? 解决方案 describe "check images and favicon" do{ 访问“url/to/check"之前)它“应该有图像"做page.should have_css('img', tex ..
发布时间:2022-01-02 10:03:11 其他开发

运行 rspec for ruby​​ 时如何更改环境变量?

我有几个 ruby​​ 脚本并使用 rspec 测试它们. 我将我的环境放在 env.rb 文件中(暂时),以便我可以在本地访问它们,并在生产中将它们放在配置变量中. 但是当我运行 rspec 时,我想要不同的环境变量.两个用例: 我运行 Twilio,所以我希望能够更改用于其测试凭据的 SID 我将内容作为服务存储在数据库中,并希望拥有一个单独的测试数据库 解决方案 ..
发布时间:2022-01-02 10:03:02 其他开发

Rails RSpec 路由:在 :except do NOT route 中测试操作

相当简单的问题(我曾想过),但我遇到了一些问题: 在 Rails 3.1.0.rc6/RSpec 2.6.0 中,我试图测试我的“产品"资源的路由,路由如下: resources :products, :except =>[:编辑,:更新] 有效操作的路由有效,但我想确保编辑和更新路由不可调用.这是我正在尝试的: 它“不路由到#edit"做lambda { get("/products ..
发布时间:2022-01-02 10:02:54 其他开发

如何在 Capybara 测试中使用 Rspec 剔除 Warden/Devise

我想在我的 Rails 应用程序的 Capybara 测试套件中使用 rspec 模拟来删除登录用户(使用 Devise/Warden).这将节省大量时间,并且意味着我的测试套件可以/将定期运行. 以前,我可以使用 authlogic 来完成此操作,方法是使用如下代码删除我的会话模型: def login(user)user_session = mock_model(UserSession ..
发布时间:2022-01-02 10:02:39 其他开发

如何从不在`lib`目录下的`gem`中要求文件?

我想为我的 rubocop 自定义警察编写规范.这个 gem 在此处定义了方便的助手.我想要求它.如何实现什么? 我尝试使用 Gem.find_files,这使我能够要求该 gem 中的任何文件,但只能在 lib 目录下. 例如: # 这需要 ...gems/rubocop-0.29.1/lib/rubocop/formatter/formatter_set.rb需要 Gem.fin ..
发布时间:2022-01-02 10:02:28 其他开发