有没有办法用别名“descripe”`它在ruby/rspec中是`到` di `的

据我所知,rspec要求: describe '...' do it '...' do end end 我想将此语法缩短为: di '...' do end 对于一次性规格。我已经看到了这一点,但这只是为了给示例方法添加别名 有没有办法做到这一点?还是短一点的一次性规格?我可以全局设置吗 thx它实际上不是一个别名,但是您可以定义一个di方法来执行您想要的操作,如下所示: def di(example, &block) describe example do

Rspec 测试使用url_作为方法的帮助程序

我有类似的方法: def my_helper(builder, name, order) options = { builder.search_key => builder.search_attributes.merge('sort' => order) } link_to name, url_for(options) end Helper将一些参数(这里是简化的示例)添加到当前url和构建链接。 当我尝试用RSpec测试这个方法时,我得到异常ActionCon

Rspec 宙斯在Rubymine下运行路由规范,但不运行模型规范

Rubymine 6.3.2 此命令在控制台中工作: /Users/batman/.rvm/rubies/ruby-2.0.0-p353/bin/ruby/Users/batman/work/marvin/marvin/bin/zeus-rspec/Users/batman/work/marvin/marvin/spec/models-需要团队城市/spec/runner/formatter/teamcity/formatter-格式规范::runner::formatter::formatte

Rspec VerifyingDouble object\u参数数量加倍错误

我有一门课: class SomeClass def initialize(foo, bar) end end 我正试图创建一个双重验证,如下所示: object_double(SomeClass.new) 这给了我一个错误: wrong number of arguments (0 for 2) 我如何防止这种情况 我也试过这样做,尽管这对我来说没有多大意义 object_double(SomeClass.new, initialize: true) 您的SomeClass#i

如何在.rspec文件中使用变量

我想在我的.rspec文件中使用一个名为TEST\u ENV\u NUMBER的环境变量 我最初把这一行放在.rspec --format json --out ./tmp/$(TEST_ENV_NUMBER).json 但是, 创建的文件实际上是$(TEST\u ENV\u NUMBER).json 如何让--out实际评估和使用测试环境编号?您可以使用它 --format json --out <%= "./tmp/#{ENV[TEST_ENV_NUMBER]}.json" %>

Capybara找不到下拉列表(Capybara/Rspec)

我知道这类问题很多,但我尝试过一些解决方案,但都没有成功 以下是下拉列表的来源: <select style="display: none;" name="Select_Company" id="Select_Company" class="company-list-select"> 我也尝试过(我想这是行不通的,因为“请选择一家公司”文本在技术上是一个选项: select 'ACME', from: "Please Select a Company" 所有这些都会导致“找不到元

您能否将匹配器传递给rspec中的共享示例?

我有以下情况。我有一个共享的示例,它在一些散列中作为数据传递,在另一个散列中作为预期数据传递。它看起来是这样的: RSpec.describe "shared examples" do shared_examples "matching hash" do |data, expected_data| it 'matches' do expect(data).to include (expected_data) end end it_behaves_like

如何在MINGW上获得窗户颜色的Rspec测试

我是Ruby的新手,只是想学习它,遵循 我正在运行GitBash MINGW for window,运行时(rspec 2.4.0) 我得到的答复是: You must use ANSICON 1.31 or later (http://adoxa.110mb.com/ansicon/) to use colour on Windows 。。。但是我很喜欢使用MINGW。如果我使用ANSICON,我似乎无法获得 ssh-add 为了工作,我得到了错误 Could not open a c

带设计误差的rspec集成测试

我在这里发布了一个类似的错误,但所有这些都不能解决我的问题 我的文件“spec/request/news\u controller\u spec.rb”如下所示: require 'spec_helper' describe "NewsController" do include Devise::TestHelpers describe "GET /news" do before(:each) do @request.env["devise.mapping"]

多租户和rspec

我仍然很熟悉w/RSpec,在为我的多租户应用程序设置测试时遇到了一些问题 该应用程序在以下位置工作: client1.example.com client2.example.com 等等 在我的RSpec中,我做了以下工作: let(:tenant) { FactoryGirl.create(:tenant, subdomain: "client1") } let(:root_path) { "http://client1.example.dev:3000" } before { ten

Rspec 水豚基于文本和html数据属性单击项目

我已经将capybara与rspec/rails一起用于非常简单的测试,但是有一个带有许多按钮的页面。我有一组按钮,如下所示: <button class="add-item text-as-link btn" data-menu-item-id="50" data-menu-header-id="34">add menu item</button> button = page.first(:xpath, '//button[@data-menu-item-id="50

Rspec 组合多个let语句

如何定义一个方法create\u all,使我能够代替编写 describe "some spec" do let(:a) { create :a } let(:b) { create :b, :a => a } ... 写 describe "some spec" do create_all ... 更具体地说:我必须在哪里定义它才能在描述上下文中使用它 它应该可以跨不同的规范文件工作。我认为您可以将方法定义放置在此文件中的任何位置(甚至在其他文件夹中-例如spe

在rspec测试中,对数据库对象的更新不';我不总是这样

我尝试测试的要点是加载一个页面,更新数据库中对象的状态,然后重新加载页面以查看对该对象的引用不再存在。大致如下: before do <some setup stuff that requires js: true) <ObjectClass>.first.update(current_state: <new state>) visit user_path(user) end it "should remove the reference to th

(:每个)挂钩前的rspec-有条件地应用

我的rails\u helper.rb中有以下内容: RSpec.configure do |config| # ... config.before(:each, type: :controller) do # SOMETHING end end 我想定义目录,这个东西将适用于这些目录(在我的情况下,仅适用于spec/controllers/api目录下的文件) 有机会做到这一点吗?您可以使用更专业的名称: 然后在spec/controllers/api中的RSpec示例中

控制台命令输出的rspec测试

我在ruby中有以下代码片段 lizard_cli_version = Gem::Version.new(`lizard --version`.scan(/(?:\d+\.?){3}/).first) required_version = Gem::Version.new(Fastlane::Lizard::CLI_VERSION) if lizard_cli_version < required_version UI.user_error!("Your lizard version

Rspec 在capybara中运行每个场景时如何打印场景名称

我希望在控制台中打印场景名称。我在我的框架中使用Rspec、水豚和硒。 你能帮忙吗 最简单的方法是选择一个已经为您执行此操作的格式化程序。RSpec附带了许多内置格式化程序,文档将打印场景名称-。还有许多第三方格式化程序选项,或者您可以编写自己的自定义格式化程序-

如何使用RSpec 2创建RSpec任务?

使用tspec 2,我想动态创建一个要运行的rake任务,我们在RSpec 1中执行以下操作: Spec::Rake::SpecTask.new(:client) do |t| t.spec_files = FileList['spec/units/client/**/*_spec.rb'] t.spec_opts = spec_opts end 但是现在Spec::Rake::SpecTask被替换了,有什么建议吗 关于现在的任务名称是task,如中所示 Rspec::Core::R

是否可以创建一个模拟;基于;然后用Rspec存根它的一些方法?

当我使用 user = mock(:user, :something => 'success') 我希望user.something返回'success',在很多情况下这就足够了。大多数情况下,我只需要一个名为user的“thing”,而不是在发送特定消息时返回和指定值 但有时候,这还不够。有时我希望有一个实际的用户,比如在User=User.new中,然后“mock”对象以便用户。有些东西返回我需要的任何东西?这样做怎么样: user = User.new user.should_re

Rspec 使用capybara,如何使用page.should\u模板

我有以下测试: it "I can Sign Up with Facebook" do visit new_user_registration_path click_link_or_button 'Sign up with Facebook' # Validate page.should render_template("registrations/signup_connect_to_facebook.html.erb") end 在我得到的日志

bundle exec rspec spec/requests/static_pages_spec.rb语法错误

使用Hartl的教程 我阅读了第3章,在使用rspec进行测试时没有遇到任何问题,但是在我完成了本节之后,合并了分支,等等-我不能再运行rspec测试了。我在第4章尝试进行第一组测试,但我得到以下错误: C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/rspec-core-2.10.1/lib/rspec /core/configuration.rb:746:加载中“:C:/Sites/rails\u projects/sample\u

TeamCity服务器未与Rspec/Turnip/Capybara集成测试一起工作

我一直在和中为web应用程序编写集成测试 当我使用命令行上的rake:name\u of_task在本地机器上运行测试时,它会工作,浏览器会弹出,一切正常。我的任务是: desc "Run Integration Tests" RSpec::Core::RakeTask.new(:integration_test) do |t| t.pattern = 'spec/*' t.rspec_opts = ["--format documentation", "--format docume

如何在RSpec中包含模块/测试接口/测试角色?将POODR测试代码从Minitest转换为RSpec

我想把Sandi Metz在“POODR”中的最终测试代码从Minitest翻译成RSpec。在第9章中,她检查“包含DiameterzableInterfaceTest”的任何对象是否具有“diameter”方法。在此,它检查DiameterDouble和Wheel是否都有“直径”方法: 但是模块中的所有“对象”组合都失败了。如果我使用“object”,它会说“未定义的局部变量或方法`object”。“对于@object”,它会说“预期的nil将响应:diameter。”对于“:object”

RSpec:如何测试init方法

我想测试在初始化类的新实例时是否调用了某个方法。在我的项目中,我有以下代码: class Journey def initialize(entry_station) @journey_complete = false @entry_station = entry_station self.start_journey end def start_journey ... end end 我想编写一个RSpec测试,检查初始化时对所有新旅程实例调用的

Rspec 如何访问正在描述的对象?

如果我有如下示例: describe "A flux capacitor" do it "should flux a lot" do # how can I access the string object "A flux capacitor" in here??? ... end end 如何访问所描述的字符串对象“通量电容器”? 我尝试了一些“描述类型”和“描述类”的排列 例如: 但这些总是一无所获。我做错了什么 谢谢, -Bill这可能不是最好的方法,但您可以尝试: ex

Rspec rake规范在rake规范:(模型|控制器|视图)通过时失败

我在rspec邮件列表上问了这个问题,但没有得到回复,所以我想我应该试试这里 在Ruby1.9.2-p180上使用RSpec1.3.2和RSpecRails1.3.4以及Rails2.3.11 $ rake spec:models 他们都通过了。当我 $ rake spec:controllers $ rake spec:views 他们都通过了。当我 $ rake spec:controllers $ rake spec:views 他们都通过了。但是当我 $ rake spec

Rspec:失败后调用方法

我试图找出如何在每次失败后调用spec助手中的方法。我觉得问这个问题很糟糕,因为这似乎是以前问过的问题,但我觉得这有点难以理解,因为我所发现的只是在after:each中检测失败 基本上,我想给自己设置一个通知,比如: def you_failed system "say -v Bad test failed" end 您需要创建一个自定义格式化程序。查看Core::BaseFormatter和Core::BaseTextFormatter。您将发现一个失败的方法示例。在自定义格式化程

开发和产品工作时RSpec测试失败-RSpec怪癖、虚拟属性或表单问题?

我正在使用RoR编写一个基本的应用程序,并且正在使用RSPec和Factory Girl进行测试。我的应用程序正在Dev和Prod上运行,但我无法通过所有RSpec测试。我怀疑这是RSpec的一种怪癖,或者它与虚拟属性的大规模分配有关。我会尽可能多地提供信息,但如果我遗漏了任何相关信息,请告诉我。我已经写了一段时间了,但这是我的第一篇文章,所以我相信我会忘记一些东西 编辑:我应该说,在我实现虚拟属性之前,所有测试都通过了,我在这个用户名字段上使用了JQuery ui自动完成 以下是我的设置: 轨

RSpec:如何测试布尔返回类型?

我正在使用RSpec测试一个API。我想指定一个特定端点返回一个布尔值,true或false。这是一个供其他系统和语言使用的API,因此它必须是一个实际的布尔值,而不仅仅是Ruby将计算为false或true 但是我看不出有什么方法可以做到这一点,因为Ruby中没有Boolean类型。虽然Ruby没有Boolean类,但它确实有and,其中true和false是唯一的实例。我相信你可以和这两个人中的任何一个进行测试,并且可以很好地进行测试 true.is_a? TrueClass # =>

区分Rspec和x27的困难;s';让';vs';让我来';

我已经阅读了,并搜索了许多其他地方,但我很难理解Rspec的let和let之间的区别 我已经读到,let在需要时才初始化,并且它的值仅在每个示例中缓存。我也读过let强制变量立即存在,并强制调用每个示例。我想因为我是新来的,我很难理解这与下面的例子有什么关系。为什么:m1需要设置为let断言m1.页面上存在内容,但是可以使用设置:user,让断言页面包含文本:user.name subject { page } describe "profile page" do let(:u

RSpec";让我们;方法错误地返回nil

在使用let进行RSpec测试时,我遇到了一个奇怪的行为。我从来没有遇到过使用let的问题,所以这就是为什么这么奇怪的原因。在以下测试中,my_modellet定义返回零: describe '.process' do let(:my_model){ Fabricate(:my_model) } it 'doesnt work' do # my_model returns nil but it should be returning the fabricated model

Rspec 什么';我的路线是怎么走的?轨道4

就我所知,我的路由文件-对于创建site.com/users/create的全新项目,我会: StartPoint::Application.routes.draw do resource :users end 但在运行我的测试时,我得到: INFO - Running: spec/routing /home/adam/.rvm/gems/ruby-2.0.0-p247/gems/rspec-core-2.14.5/lib/rspec/core/configuration.rb:896:i

终端命令rspec spec/controllers/teams\u controller\u spec.rb超时

我一直在成功地运行这个命令,直到我正要启动文件中的最后一个规范(请描述“DELETE#destroy”do)。现在,当我运行这个问题标题中列出的命令时,我的终端似乎冻结或超时 这是我的相关文件和终端输出 Gemfile source 'https://rubygems.org' 'ruby' '2.0.0' gem 'rails', '3.2.14' gem 'pg' gem 'devise' gem 'composite_primary_keys' gem 'bootstrap-sass'

Rspec 从it块中使用factory\u girl对象

我想循环一组对象,这些对象是由工厂女孩在it块之外构建的 例如: before :each do @array = build(:super_cool_array_of_objects) end context 'I want access to @array here' do @array.each do |item| it 'tests item for some interesting things' do item.should be_true # my

使用rspec测试数据库记录

我哪里做错了 describe '#update' do let(:new_name) { Faker::Lorem.word } let(:request) { patch :update, id: parent_folder.id, folder: { name: new_name, parent_id: nil, user_id: user.id } } it 'should change the name' do expect{ request }

用rspecmock在JRuby中模拟Java接口

我正在用JRuby为JDBC编写一个过于简单的包装器。本质上,我想要一个包装类DBW,它接受一个连接字符串和一个可选的初始化块 require 'java' class DBW def initialize (connection_string, &optional_init_block) if optional_init_block yield end @connection_string = conn

RubyMine中的RSpec代码完成

RubyMine是否可以配置为为RSpec提供代码完成?如果是的话,你能告诉我怎么做吗?在发布这个问题之前,我确实试图找到一个解决方案,但没有成功。谢谢大家! 按照这里的说明:()按照这里的说明:())

Rspec:呈现部分

我对Rspec有点陌生,这可能是一个很容易回答的问题 尝试运行测试时出现以下错误: Failure/Error: expect(view).to render_template(:partial => "_ad_column", :count => 2) expecting _ad_column to be rendered 2

Rspec 水豚

嘿,伙计们,我这里有一段漂亮的代码,我想做的是在规范范围内单击值为“Personal data change erstellen”的提交按钮。唯一的问题是,我像其他5个提交按钮一样具有相同的值,我试图在一个方法中涵盖所有这些。有没有人建议如何让它运行,这个模棱两可的错误简直要了我的命。请参阅下面的代码 <legend>Handynummer</legend> <div class="form-group">

Rspec Chefspec:override属性不';行不通

我正在尝试使用bundle exec rspec检查规范测试,以进行以下测试 require 'spec_helper' describe 'my_recipe::default' do windows_platforms = { windows: %w(2008R2 2012 2012R2 2016 2019) } windows_platforms.each do |platform, versions| versions.each do |version|

Rspec-config.before(:suite)未在spec\u helper中运行

我目前正在寻找在内存中设置一个可以在整个套件中使用的哈希 我期待着做以下事情 RSpec.configure do |config| config.before(:suite) { $user_tokens = initialize_my_stuff } end 但是,当我去运行我的套件时,我从我的一个规范中得到一个错误,错误如下: NoMethodError:nil:NilClass的未定义方法'each' 它正在尝试运行以下命令: $user_tokens.each do |user,

Rspec Rails/Capybara:如何单击表行中也包含唯一文本的链接

我有一个应用程序,它不会为表格单元格分配唯一ID。给定第1列中的唯一文本、第2列中的管理链接和第3列中的删除链接,我如何告诉capybara单击包含文本“Foo”的同一行中的管理链接 Foo manage delete Bar manage delete 当与.should子句一起使用时,我了解了如何使用find('tr',text:“Foo”)。我看到了如何单击包含文本“manage”的链接。但我不知道如何组合它们来查找一行,在该行中,单击一个链接。我已经测试过了,它应该可以工作

Rspec capybara webkit不再运行测试

我刚刚更新了Capybara 0.13.0和Rspec 2.12.0,现在我的Capybara webkit测试只工作了大约1/5的时间 所谓不工作,我的意思是测试的内容根本没有运行。在那次测试中它就僵住了。Ruby进程只使用了0.1%的cpu,它似乎没有做任何事情 此外,我的一些js:true测试似乎在100%的时间内都能正常工作 当我在Firefox中运行测试时,一切正常 还有其他人有这个问题吗?关于如何调试它有什么想法吗?您有没有查看过水豚的测试方法,例如?

rspec集成/请求规范与控制器规范,重点是JSON api

我采用了一个应用程序,它有一些测试覆盖范围,但大多数测试质量参差不齐。该应用程序的大部分都使用JSON api。我本来打算写请求规范,但验证并发送带有验证数据的帖子并不是件小事。对于测试JSON api,控制器规范是否更合适 比如说, match 'api/login-mobile' => 'api#login_mobile', :as => :login_mobile, :defaults => {:format => 'json' } 这看起来很简单,但需要一个与

Rspec “保护引起”;错误:can';t修改字符串;“临时锁定”;

在使用guard rspec在Rails 4项目中运行guard时,我偶尔会在vim中打开/关闭文件时看到以下错误。我尝试过升级/降级guard、guard rspec、pry和其他库,但运气不佳 ruby 2.0.0p247(2013-06-27修订版41674)[x86_64-linux] 捆绑包版本1.3.5 Guard版本2.1.1 下面是我每隔几次测试运行看到的stacktrace: Error: can't modify string; temporarily locked /h

rspec测试参数化puppet模块中的子类的最佳方法是什么

我们将Puppet(v3.6.2)与Foreman enc一起使用,并且有许多自定义模块,其模式如下图模块所示 #mkdir/manifests/init.pp class mkdir ($path, $mode) { class {'mkdir::file': } } #mkdir/manifests/file.pp class mkdir::file { file {$mkdir::path: ensure => 'directory', mode =&g

由于某种原因,RSpecRails2.1.6停止在Ruby2中工作

我的规范在ruby 1.9.2中运行良好。但是在升级到Ruby 2.1.5之后,当我运行规范时,会出现以下错误: $ rspec spec/models/user_spec.rb /local/rvm/gems/ruby-2.1.5/gems/activerecord-3.2.17/lib/active_record/connection_adapters/abstract/connection_pool.rb:9:in `<module:ActiveRecord>': uninit

在一个rspec测试中键入helper和type request

轨道5.2.2 当我需要在测试中添加帮助器时,我使用类型帮助器: RSpec.describe Utilities, type: :helper do end 当我需要添加一些请求(如pach、delete或post)时,我使用类型请求: RSpec.describe 'AuthenticationPages', type: :request do end 但当我需要同时使用类型助手和请求时,应该是什么代码 对于示例代码: RSpec.describe Utilities, type:

上一页 1 2  3   4   5   6    7   8   9  ... 下一页 最后一页 共 26 页