使用rspec时mongoid上的电子邮件已出错

我正在使用RSpec、Mongoid DB和FactoryGirl。以下是我的课程\u spec.rb和工厂/用户.rb require 'spec_helper' describe Lesson do context "has valid data" do before :each do @course_template = FactoryGirl.create(:course_template1) @user = FactoryGirl.build(:us

Rspec 在水豚身上发现的链子?

我试图在水豚中寻找连锁方法,但运气不太好。我希望第二个查找只在第一个查找的输出中查找文本。但是,第二个查找将搜索整个文档 element = page_foo.find('.bar') element.find('div', :text => "name") => All divs with the text "name" on the page. 下面介绍了使用xpath的解决方案: 但是,我对xpath不太熟悉,希望找到一种解决方法 其他详情: HTML: 我的宝马5系G

RSpec:在不同的情况下执行相同的期望

我想确保我的网站上的一个元素只在登录时显示 我现在就是这样做到的: it 'displays statistics when logged in' do expect { login_as(create :user) refresh_page }.to change { page.has_content? 'Statistics' }.from(false).to true # I know, "to true" is redundant here, but

Rspec 运行testbyspec和Capybara,如果我通过请求外部javascript资源将html元素追加,则无法加载该元素

这是我的项目的图像 我们可以在导航栏中看到登录和注册。我通过请求一个外部javascript文件来附加它们 $.get('xxxx/extern.js') 但是当我运行Rpec和Capybara的测试时,我无法得到这两个链接 这是我测试的截图 我试图扩大等待时间Capybara.default\u max\u wait\u time=15但不起作用 有人知道如何解决这个问题吗?你的firefox和chrome版本是什么,打开一个控制台刷新你的页面,看到可能是链接没有呈现你使用的是什么驱动程序

Rspec 规范测试中的stubing chef_环境变量

在我的规范测试中对chef_env变量的刺伤有问题。配方的一部分: recipe.rb example_credentials = data_bag_item(:credentials, 'example') template '/etc/nginx/sites-available/example.conf' do source 'http/example.conf.erb' owner 'root' group 'root' mode

Rspec 规范中的随机“%2F”用于验证注释表单的存在性

我正在尝试为posts/show.html.erb视图编写规范,该视图是我为学习rspec而编写的一个简单应用程序。我现在有点困惑,想弄清楚额外的%2F是从哪里来的。有什么想法吗 我的规格 it "should render a form to add a comment" do render "posts/show.html.erb" response.should have_selector("form[method=post]", :action => post_

Rspec 如何在渲染视图上测试文本?

这是我的测试: require "rspec" describe HomeController do render_views it "should renders the home" do get :home response.should render_template("home") response.should include_text("Simulate Circuits Online") end end 但是,我得到了: 1) HomeC

在RSpec中,什么';那之前(:suite)和之前(:all)的区别是什么?

仅显示在(:suite)之前(:all)之前调用before(:suite) 什么时候我应该使用一个而不是另一个 您还可以使用before(:suite)在任何 运行示例组。这应该在RSpec.configure中声明 当在RSpec.configure块中定义了before(:all)时,将在每个顶级示例组之前调用它,而before(:suite)代码块只调用一次 下面是一个例子: RSpec.configure do |config| config.before(:all) { puts

Rspec测试问题未产生正确响应

当我尝试运行rspec测试时,我收到以下响应 user.respond_to?(:name) 应该得到“true”,但得到以下错误 *false是我应该得到的响应,上面的错误是我收到的 这是我的user.rb文件 class User < ActiveRecord::Base attr_accessible :name, :email validates :name, presence: true end 您没有错过错误消息的第一行吗?那个能准确地告诉你出了什么问题的部分?对

轨道4和Rspec

我已经将rails 3升级到rails 4。在我更改了Gemfile、routes和其他内容之后,我能够运行服务器并像以前一样导航到页面 但是,在运行规范时,我收到了相同的错误消息: XXX控制器的未定义方法“respond_to” 我是否需要更新RSpec gem或其他内容 谢谢您能在出现故障时分享示例/测试代码吗?respond\u to是一个基本的RSpec匹配器,与Rails无关,因此它不依赖于您使用的Rails版本。@PeterAlfvin不是吗?非常奇怪的行为。你能分享你的测试代码吗

终端命令中的Rspec pass配置选项

我想在从终端运行rspec时传递配置选项,而不是在rspec读取的文件中设置它们 我的spec\u helper指定了config.order='random',所以我需要覆盖它 用例生成一个命令以用于rake任务(生成文档) 我试过: rspec spec/ --config.order default 但是--config是无效的选项请尝试: rspec spec --order default 通常,大多数命令行选项的格式为--。有关详细信息,请参见rspec--help。Ah nic

运行rspec+时出错;工厂女孩:未定义的方法&x27;一些工厂=';对于#<;类实例>;

我在这里有点新手。。我找不到解决rspec故障的明显方法。我正在尝试测试作用域唯一性验证(请参阅下面character\u class\u spec.rb中的测试)。我假设错误告诉我它找不到字符\u类工厂??不管怎么说,我正在为这项工作的数据和测试设置而挣扎。如能提供意见/帮助,将不胜感激 运行“rspec规范”时出错 1) 字符类 失败/错误:let(:character\u类){build(:character\u类)} 命名错误: 未定义的方法character\u class='for#

如何参考rspec水豚特性测试的路线?

我的测试已经完成了 scenario 'with all required fields entered' do fill_out_form zip.zip_code click_button(page_object.eqv_continue_button) expect(page).to have_css(page_object.css_vehicle1_ownership) expect(current_path).to eq(landings_path) end

RSpec存根环境助手

我有一个lib/require/environment\u helpers.rb文件,其中包含helper方法。有更多的方法,但它没有包装在一个模块中 def development? Rails.env.development? end def test? Rails.env.test? end 我正试图剔除这些方法,但我一点运气都没有。我试过: before :each allow(Rails.env).to receive(:production?) { false } e

Rspec Rails 5 ActiveStorage如何等待所有线程完成

首先,让我描述一下问题。我使用RSpec运行一个脚本来生成一些测试数据 RAILS_ENV=development rspec spec/dev/food/food_upload.rb 脚本如下所示 image = fixture_file_upload(Rails.root.join('spec', 'resources', 'test2.png'), 'image/png') (0..200).each { food = FactoryBot.build

Rspec 检查Rails 4中不存在路由

我停用了用户注册(Gem designe),我想做一个测试,以确保路由/users/sign\u不存在 为此,我在spec/features/user\u spec.rb require 'spec_helper' require 'capybara/rspec' feature "Users" do scenario "could not register " do expect(:get => "/users/sign_up").not_to be_routable

rspec测试总是使用终端通知程序显示失败

虽然我的所有规格都显示为通过我的终端,但通知始终显示它们失败。这是一个非常简单的设置,但我有什么配置错误吗?如何对此进行故障排除 Gemfile 警卫文件 问题是guard未配置为使用bundle exec运行rspec guard :rspec, cmd: 'bundle exec rspec' do ... end notification :terminal_notifier guard :rspec, all_after_pass: true, all_on_start: true

Rspec标记gems中的许多错误

我第一次尝试建立Rspec。我已从等级库/模型和等级库/控制器中删除所有旧生成的等级库 Gemfile group :development, :test do gem 'jasmine-rails' gem "jasmine-core", "~> 1.3" gem 'binding_of_caller' gem 'rspec-rails', '~> 3.0.0' gem 'factory_girl_rails' end group :test do gem

Rspec 无法使用Poltergeist单击引导模式对话框按钮

当我点击一个按钮时,会显示一个引导模式弹出窗口。我试着用下面的Poltergeist函数点击OK或cancel按钮,但都没有成功。要么功能不工作,要么在外部单击 <div class="modal-footer"> <a class="btn cancel" data-dismiss="modal" href="#">Cancel</a> <a class="btn proceed btn-primary" href="#">OK</a>

如何使用Rspec和Capybara验证我没有死链接?

我试图使用Rspec和Capybara来验证生成的HTML页面是否没有死链接。大多数(如果不是全部)链接都指向同一文件系统上的相对HTML页面 我要找的是: it 'has no broken links' do all('a') do |link| visit link[:href] # 200 is the Ok HTTP response page.status.should == 200 end end 但是,这不会产生任何语法错误,也不会查找实际断开的

rspec检查数组元素中的数字实例

如何检查数组的元素是否只包含数字(整数) 我的简单LotteryTip类可以工作,但我想知道如何检查返回数组中元素的类型…我不确定这是最佳做法还是至少是良好做法,但我在前面定义了自己的方法:每个do块: def is_number? @tip.all? { |x| x.is_a? Integer } end 因此我可以在it块中进行检查: it "s elements are only numbers" do expect(is_number?).to eq(true)

如何确定哪项rspec测试耗时如此之长

我们的一个(或几个)测试需要花费很长时间,我们希望对它们进行优化 我们说有1000个测试,所以对我来说,遍历并运行每个文件是不切实际的 有没有一个简单的方法来找到慢的 这是rspec 1.3,在rspec 2和3中,您可以使用--profile标志或将--profile添加到.rspec文件中。这将跟踪前10个最慢的示例 对于RSpec 1,您可以将--format o与spec命令一起使用。它显示了一个基于文本的进度条,其中包含10个最慢的示例。更多细节 对我来说--profile选项不适用于

Rspec在测试输出中使用错误语法

我有一个规范文件: shared_examples_for "all pages" do it { should have_selector('h1', text: "heading") } end Rspec产生以下输出: 应具有带文本“heading”的css“h1” 但我更愿意: 应具有带文本“heading”的css“h1” 有没有一种简单的方法可以解决这个问题?转到他们的开发报告,并根据需要修改文档,并向他们发出请求!我希望他们会觉得有用并接受它。干杯 编辑:或者,您可以随时通

在rspec测试中单击第二个it块中的链接时出现问题

当我的capybara测试运行到rspec文件中的第二个it块时,我无法单击链接或基本上执行任何操作 因此,我的代码如下: 注意-这是一个基本测试,我浏览到一个页面,在before块中创建一个调查,然后在it块中的测试将是编辑和查看调查 require 'spec_helper' include Tests # - this is a module where I include the Capybara DSL describe "Survey Tests" do before :all

如何测试在rspec中混合使用参数和关键字参数调用该方法?

我有一个方法,它的调用方式如下: post_signup(user, "fb signup completed", app_context: current_app_id, description: "Automatically Populated Via #{current_app_id}") 参数是值和关键字参数的组合。我在测试中关心的是应用程序上下文。我尝试过类似的方法,但不起作用: it "should log a

水豚/Rspec:填写多个单选按钮

我想可能有一个更好的方法来做到这一点,然后复制粘贴100次 但本质上我有一个表单页面,有很多单选按钮(准确地说是95)。我正在使用page.find(:xpath)totrigger('click')on Xpath看起来有点像这样: page.find(:xpath, '/html/body/div/div[2]/div/div[2]/form/div[2]/table/tbody/tr[1]/td[2]/div/label').trigger('click') 每行单选按钮选项的TR[x]

大型测试套件的摘要模式中失败时的Rspec详细信息

当我们运行一个大型测试套件时,它在早期测试中经常会失败,但我们仍然希望运行整个套件 如果能看到所有的绿色都用点来表示,那就太好了 但是,和F一样,对于fail,最好能看到stacktrace,甚至仅仅是错误的行号 你对如何实现这一目标有何想法? 干杯 Ian.您正在描述RSpec默认工作方式。你需要额外的选择,比如-fail fast,让它在第一次失败时停止 如果您没有更改rspec行为的选项,可以检查您的.rspec文件?如问题所述,我们不需要在第一次失败时停止,而是显示失败,然后继续。谢谢你

rails生成rspec:install returns';在任何源';

目前,我正在阅读Michael Hartl的Ruby on Rails教程第3章(),运行以下命令后,我收到一个错误: rails generate rspec:install 这就是我得到的错误: Could not find addressable-2.2.8 in any of the sources Run 'bundle install' to install missing gems. 如果我重新运行“bundle install”,我将得到以下输出: Using rake (0

如何在Rspec/Capybara中为assert指定失败消息

在我的rspec集成测试中,当我有如下断言时: assert page.has_content? some_value 如果断言失败,它将显示: MiniTest::Assertion: Failed assertion, no message given minitest文档说“所有断言方法都接受一条消息,如果断言失败,就会打印该消息”,但我找不到任何关于如何指定消息的示例。这些语法无效: assert("custom fail msg") page.has_content? some_

轨道4、RSpec、水豚和;webkit_服务器

我试图在Rails 4项目上将Rspec与capybara webkit结合使用,但由于没有正确设置capybara.default\u主机,我遇到了一个错误 webkit_服务器已正确安装并处于路径中 我已将以下宝石添加到Gemfile: group :test do gem 'rspec-rails', "~> 2.12" gem 'factory_girl' gem 'capybara', '2.0.3' # capybara-webkit works with thi

Rspec Julia语言中的BDD

我想知道是否有一些工具可以在Julia语言中进行BDD,比如Rspec或Ruby中的Cucumber?我试图找到一些类似的工具,但我找不到类似的工具,可能是因为语言太新,或者BDD在HPC“世界”中不太流行 我知道,即使在“过时”的Fortran中,也有一些软件可以进行TDD或BDD,所以在Julia中应该有这种意义上的东西,我只是还没有找到 有人知道吗?我知道有两个测试套件:Base.test和FactCheck。应该可以将这些用于TDD,但我还没有尝试过。FactCheck可能适用于BDD,

空数组的rspec匹配_数组失败?

在我的一个测试中,我无法使用match_数组再次匹配空数组。我有以下信息: Failure/Error: expect(subject.custom_text_locations).to be match_array([]) expected #<RSpec::Matchers::BuiltIn::MatchArray:105810100> => #<RSpec::Matchers::BuiltIn::MatchArray:0xc9d1168 @expected=

设计和RSpec:访问规范中的当前用户

我试图在我的视图规范中访问Desive helper方法,但没有成功。我以前在这方面看到过很多类似的问题,但似乎没有一个能具体回答我的问题,而那个回答了我的问题的人,有一个解决方案对我不起作用 这是我的rails\u helper.rb文件 RSpec.configure do |config| config.fixture_path = "#{::Rails.root}/spec/fixtures" config.include FactoryGirl::Syntax::Meth

Rspec cucumber场景概述:如何跳过一个场景的步骤

我有一个奇怪的情况,我有两个例子。我有这个 一步填写用户表单的必填字段,我只需要为一个示例scope_self执行该字段。另一方面,它不应该运行 有没有办法做到这一点 Examples: | action | | "scope_self" | | "scope_new" | 使用强制步骤创建单独的场景将是一个更容易的选择。这将是一个更干净的实施 无论如何,有一种方法可以让它在相同的场景大纲中工作 将示例表一分为二。给第一个表一

如何在Rspec中测试来自CanCanCan的消息?

我正在寻找一种方法来测试来自CanCanCan gem的消息 def my authorize! :my_words, word, message: I18n.t("messages.login_to_add_new_word") end 什么样的 it "sets flash message" do expect(message???).to eq I18n.t("messages.login_to_add_new_word") end 授权!方法会引发CanCanCan::Acc

RSpec2:view.should呈现_模板最佳实践?

几个月来我一直在寻找最终的答案 RSpec book根本不涉及它: 现在,我们如何处理视图规范中的局部显示 在RSpec2中 我有一个大的35K+线的意见和相关的规格,我正在尝试 升级到Rails3/RSpec2。我的观点相当广泛地使用了partials 这个问题对我来说是一个巨大的障碍 before do view.should render_template("event_list", :locals => {:calendar => @calendar}) end 导致我的

Rspec 让工厂女孩在铁路上工作3

就我个人而言,我不能让工厂女孩在铁路上工作。我创建了一个全新的应用程序。我的档案: gem "rspec" gem "rspec-rails" gem "factory_girl_rails" application.rb中的生成器如下所示: config.generators do |g| g.test_framework :rspec, :fixture => true, :views => false, :fixture_replacement => :

rspec测试错误

好吧,就这么定了。复习Rails教程。我们正在运行一个测试环境,以确保我们希望显示在页面上的内容能够实现。使用pages\u controller\u spec.rb文件执行此操作。这是我们通过的三个论点之一: describe "GET 'home'" do it "returns http success" do get 'home' response.should be_success end it "should have the righ

如何在Cloud9上执行RSpec

每次尝试运行rake spec或bundle exec rspec spec时,我都会收到一个权限被拒绝-绑定(2)错误。 跟踪: cloud9支持规范吗?我能够在cloud9上运行mini-test、test::unit和rspec测试。 我认为您得到的错误要么是由于spork,要么是试图使用drb(带guard或其他东西) 我也试图让它工作,但我无法让spork绑定到$PORT,而且似乎不允许您绑定到任何其他端口 我也无法让警卫正常工作。它会看到文件发生了变化,但是当运行规范时,我发现了关于

在rspec中显示所有挂起、通过和错误测试

每次运行rspec命令时,我都会得到一个列表,其中只列出了挂起的规范或有错误的规范,这是可以的 我还需要列出所有通过的测试。如何做到这一点 通过查看他们的CLI自述文件,我无法找到它 您可以尝试“文档格式” 谢谢,但是当我使用rspec-fd时,我确实看到所有rails服务器都在规范名称之间登录。有没有办法摆脱日志,这样我就只能得到规格的状态?可能是重复的 $ rspec -fd spec/ $ rspec --help -f, --format FORMATTER Cho

理解rspec唯一性测试——清单6.18

我试图理解清单6.18(rails 3.2)中的唯一性约束测试 “此处的方法是使用与@user相同的电子邮件地址创建用户,我们使用@user.dup来完成此操作,它创建了具有相同属性的重复用户。由于我们随后保存了该用户,原始@user的电子邮件地址已存在于数据库中,因此不应有效。” 我不清楚的是,第一个用户何时何地保存到数据库?i、 e.没有对user.save的调用。汽车魔术在哪里 谢谢 KA不会保存第一个用户。测试设置初始化(但不保存)用户,然后复制并保存副本。然后它尝试验证原始(未保存)用

“如何抑制RSpec输出”;运行选项:包括{:focus=>;true}";?

每次运行规范时,RSpec都会打印运行选项:include{:focus=>true} 我已经知道运行选项是什么,那么有没有办法抑制此输出?现在有一个if-you设置config.silence\u filter\u announcements=true如下: RSpec.configure do |c| c.filter_run_including :foo => :bar c.silence_filter_announcements = true end @Landon

Rspec-如何在服务层测试模块

我的服务层(app/services/article_service.rb)中有ArticleService模块,我想测试这个模块和方法。以下是rspec代码。结果是错误的。我想原因是测试没有调用ArticleService.create,但我不知道怎么做 module ArticleService module_function def create Article.update(publish: 1) end end

如何组合Rspec命令行开关(即标记和完整搜索)

是否可以在Rspec中组合用于全文搜索和标记的命令行选项?比如rspec spec-e User-t buggy等。 如果我只是把它放在彼此后面,它总是做一件事——有什么诀窍或解决办法吗 (产出) 运行选项:包括{:full\u description=>/selftest/}?)目前这是不可能的,必须等待rspec的未来版本

Rspec BDD循环-如何将后端与前端连接起来

我想知道如何连接前端BDD(即Jasmine)和后端BDD(rspec、cucumber)。 这两者如何关联并形成一个连贯的BDD循环? 这个周期的正确步骤是什么?要创建一个内聚的BDD周期,您需要使用“由外而内”的开发技术,然后采取“伪造直到成功”的方法,即在编写具体实现之前使用模拟对象 假设您有以下情况: Given I am on the home screen When I submit valid log-in credentials Then I am navigated to th

Rspec 根据请求URI在VCR中设置默认选项

在所有请求到example.com的规范中,我想忽略URI中关于请求匹配器的尾随id。像这样的 VCR.configure do |c| # omitted c.register_request_matcher :uri_ignoring_trailing_id do |request_1, request_2| # omitted end c.before_http_request(lambda { |req| req.uri =~ /example.com/ })

可以依靠Rspec回滚事务吗?

今天早些时候,我开始遇到一个奇怪的RSpec问题,大约5%的测试都没有通过。主要的共同点是,大多数失败都与测试计算类内实例总数的情况有关,例如expectObject.count。错误类型如下所示: 预期:2 得到:10 我想深入了解单个测试的细节,看看发生了什么。我发现每次运行测试时,即使我注释掉了测试的每个部分,特定对象的实例数也会增加一个。这就像每次运行测试时,测试数据库都在无缘无故地实例化一个对象。我检查了我的rspec配置,以确保事务装置设置为true。我一直在寻找一个问题的答案,为什

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