我仍在试图解决这个问题中概述的基本问题:Rails幻影、恶鬼和水豚在一起玩得不好
基本上我所有的测试都运行良好,但我无法从rspec测试中使用PhantomJS/Poltergeist/Capybara对屏幕进行有效渲染。
通过@theSociable.me提供的小脚本(如果我单独运行该测试),我可以通过Poltergeist/Capbybara获得我的一个屏幕的渲染!太棒了!
但是,当我将include Capybara::DSL这一行添加到测试中时,它们都会因以下错误而失败:
Failure/Error: visit signin_path
ActionView::Template::Error:
wrong number of arguments (0 for 1)
如果我沿着回溯:
# ./app/models/user.rb:118:in `authenticate_with_salt'
# ./app/helpers/sessions_helper.rb:67:in `user_from_remember_token'
# ./app/helpers/sessions_helper.rb:25:in `current_user'
# ./app/helpers/sessions_helper.rb:31:in `signed_in?'
# ./app/views/layouts/_header.html.erb:9:in `_app_views_layouts__header_html_erb__1456931984656374710_70286761365040'
# ./app/views/layouts/application.html.erb:12:in `_app_views_layouts_application_html_erb___847298267570209394_70286745935080'
# ./spec/requests/parties_spec.rb:22:in `block (2 levels) in <top (required)>'
我的访问登录路径线路似乎有问题
…你知道为什么在我的项目中加入Capybara::DSL会突然导致认证/登录方面的所有这些大规模失败吗?
谢谢
戴夫,我得看看你的请求规范的内容,但很可能你正在运行水豚2。要求集成规范放置在spec/特性
中,而不是spec/请求
中。
规范/请求现在保留给API测试(直接GET请求、状态html" target="_blank">代码和重定向断言等)。)这就是为什么它不会自动接收水豚DSL——而任何放在规范/特性
内的规范都会。
我们在尝试让我们的请求规范访问Capybara DSL时遇到了类似的问题,因为我们需要这样做(尽管我不认为这是个好主意)。这就是我最终得到的解决方案,它对我们有效。
您不需要将Capybara DSL包含在全局范围内,而是需要将其包含在RSpec配置块中,如下所示:
# spec/spec_helper.rb
RSpec.configure do |config|
config.include Capybara::DSL, type: :request
end
根据我相信的目录结构,type::request
部分确保DSL仅用于匹配此特定类型的测试。这似乎并没有影响到访问Capybara DSL的其他测试(例如功能规范)。
希望它能解决你的问题。
当我将此添加到布局中时: 并包括 然后,在onCreate()中: 而initSlider()中的setup*方法则取自此处。 但我的应用程序在onCreate()中的setcontentview崩溃,并出现以下错误消息:
我有这个代码: 有时它会在完成(nil)行崩溃,并带有错误代码 线程1:EXC_BREAKPOINT(代码=1,子代码=0x102ba1774) 考虑到参数是可选的,我不知道为什么它会崩溃,我只是把零传递给它。 以下是我用于调用完成处理程序的确切代码。它位于消防库事务的完成块中: 下面是处理完成的代码 这可能与事务多次调用完成处理程序有关吗?
从excel文件读取测试数据。要求:我想首先我的所有测试应该运行在相同的测试数据,即excel行,然后所有测试与另一行。 解决方案:尝试将@Factory与我的@DataProvider一起使用 问题:如果我在@dataProvider中使用核心值,那么它可以正常工作。但是当从excel动态获取时,如果给我错误:[错误]导致:java.lang.NullPointerException } 基类
我已经签署了一个应用程序与我创建的标志。我已经在我的手机里安装了这个apk,这是可以的,但是当我尝试打开应用程序时,它崩溃了(没有显示任何活动),并且它没有给我看日志的机会(这个对话框没有报告按钮) 问题是我在应用程序上的签名。我已经测试了其他标志和应用程序打开完美。我不能发布任何关于创建标志的信息,但只有我可以说我使用了: 其他字段为空。 主要的问题是这个应用程序是在google play中发布
问题内容: 我开始使用Selenium.WebDriver(v2.45)运行视觉测试。 作为Web驱动程序,我使用。我已经安装了Firefox38。当我尝试运行test firefox时,返回异常并显示以下消息: FF已停止工作。 有没有人有什么建议?它在前一周有效,我的测试是否因更新而崩溃? 有我的测试方法主体: 问题答案: 由于兼容性问题,Selenium 2.45无法与Firefox 38可
问题内容: 在我们的项目中,我有几个JUnit测试,例如从目录中获取每个文件并对其进行测试。如果我在中实现了一种方法,那么它只会显示为可能失败或成功的一项测试。但是我对每个文件的结果都很感兴趣。如何编写一个/ 使得每个文件显示为单独的测试,例如在Eclipse的图形TestRunner中?(为每个文件编写显式测试方法不是一种选择。) 问题答案: 看看JUnit 4 中的 参数化测试 。 实际上,我