我正在尝试在iPhone模拟器上运行一些测试,我有一个IP地址上运行的iWebdriveriPhone模拟器。这是否可能,因为所有谷歌搜索结果都是关于更新用户代理以使其就像正在使用iphone一样,但我实际上想使用来自selenium的实际iphone模拟器。配置:Capybara.default_driver=Selenium::WebDriver.for:remote,:url=>"http://192.168.1.12:3001/wd/hub",:desired_capabilities=>:iphone错误:Failure/Error:visit'http://localhos
我正在使用Cucumber和Capybara/rack_test测试Rails应用程序。我有以下步骤定义:Then/^Ishouldsee'([^']*)'$/do|content|visitabout_pathresponse.shouldhave_content(content)end其中about_path映射到/about。每次我的故事失败时都会显示消息Feature:SomeGreatFeatureSothatIcanblah-blahAsaBlah-blahIwantblah-blahScenario:Showprojectlabelonaboutpage#features
我在Ruby中进行了一系列自动化测试,这些测试使用Capybara、Poltergeist和PhantomJS与网页进行交互。然而,问题是一些页面不能正常工作,因为jQuery似乎没有被加载。例如,在一个网页上有这样的代码:但这似乎不起作用/运行。从我读到的内容来看,PhantomJS似乎不能自然地与jQuery一起工作(或者至少它不会自动加载jQuery)。我怎样才能解决这个问题。请记住,我无法更改网页的实际代码。总结:在使用PhantomJS、Poltergeist和Capybara时如何添加/注入(inject)/加载jQuery?编辑:这是我使用phantomjs的方式。请注意
版本:rails5.0.2rspec3.5.0rspec-rails3.5.1capybara2.12.1(带chromedriver/selenium用于JS测试)ruby2.3.3gitlab-ci过去(和期望的)行为当我在功能测试中遇到错误时,堆栈跟踪和错误将存储在我的机器和我们的CI控制台的结果中。即app/models/dancer.rb第36行nilClass的未定义方法“#dance”当前行为我们最近更新了代码库以对特定数据表和特定View使用“延迟加载”(或服务器端加载)。这意味着在JS/功能测试中,如果View中的某些内容未正确加载,我们不会呈现错误,而是有一个永不停
我将登录表单放入JqueryUI对话框弹出框中。当我开始进行RSpec测试时,出现错误Failure/Error:fill_in"Username",with:"user@example.com"Capybara::ElementNotFoundcannotfillin,notextfield,textareaorpasswordfieldwithid,name,orlabel'Username'found这是我的规范/请求页面:describe"createuser",:js=>truedobefore{visitnew_enr_rds_dea_path}let(:submit){"
我的应用程序中有一些JavaScript可以检测网络连接何时断开并在本地存储中临时缓存数据,以便在重新建立连接时与服务器同步。我一直在尝试找到一种使用Capybara进行端到端测试的方法,但我似乎找不到任何方法来暂时禁用应用服务器或将headless浏览器切换到离线模式。FWIW我正在使用Poltergeist作为驱动程序。有人知道如何测试吗?(我可以使用sinon测试JavaScript应用程序以假装服务器消失,但如果可能的话,我希望能够使用headless浏览器对其进行端到端测试)。 最佳答案 如果您在寻找使用Capybara和
我正在测试一个包含讨厌的iframe的页面,它需要很长时间才能加载;但是,我没有测试iframe本身。如果可能,我希望能够运行我的测试而不必每次都等待此iframe。以下可能的解决方案之一应该可以解决问题,但我很难找到文档或让其中任何一个起作用:a)Cancelthepageloadshortlyaftertherequestisplaced.b)SimulateanEscapepresswhilethepageisloadingusingsend_keysmethod.c)Usejavascript-page.execute_script("returnwindow.stop();"
我们正在为Rails开发一个插件,我已经让Cucumber与Capybara完美配合。但是,在开发时,我一直(我猜是错误的)将Javascript文件放在父测试应用程序的public/javascript目录中。所以当Capybara运行时,它找不到javascript文件。我们怎样才能让Cucumber/Capybara看到那些JS文件?更多细节:因此布局“reports.html.haml”指的是“src='/javascripts/...'”但是当我从vendor/plugins/reporter目录中运行cucumber时,Capybara找不到JS文件(我认为)。那么我应该从
更新:我删除了大多数javascript依赖项并且它起作用了。不知道哪个库或代码是邪恶的部分,我不需要它们。简单的表单,两个输入框和一个按钮fill_in'cellNumber',:with=>'13245678'fill_in'password',:with=>'mypass'click_button('OK')它找到了按钮,但没有任何反应。重要!如果我自己点击,一切都会按预期进行。OK使用ruby-debug,我发现find_button("OK").click返回“”。如果找不到会引发错误。如果我在firefox窗口内手动单击,通过sleep或调试停止capybara测试,我
是的,我知道我不应该这样做,但我只需要在Controller中运行一点capybara脚本。问题是它会打开浏览器和所有内容,但我想完全关闭测试或单独运行它。例如,如果我运行类似的东西:Capybara.current_driver=:seleniumCapybara.app_host='https://www.google.com'Capybara.visit("/")Capybara.has_content?('foo')Capybara.reset_sessions!浏览器和session仍然保持打开状态。如果我关闭浏览器并重新运行测试,它会抛出“连接被拒绝-connect(2)”