Tag: selenium webdriver

Appium服务器因没有新命令而关闭

我在Windows机器上使用Appium for Android本机应用程序自动化。 我的所有场景都表现良好,但有时App崩溃了,Appium停止说“没有在60秒内获得新命令,关闭”。 注意 – 如果明确地按下键盘上的任何键,它将获得黄瓜执行时执行的下一个命令。 我可以看到Appium正在发送查找元素的请求,但是没有收到任何响应。 我不知道为什么会这样,但同样的事情大多没有任何问题。 当这个问题发生时,Appium会关闭应用程序,接下来的场景也会失败。 有人帮助解决此问题。 这是Appium服务器日志: 信息:启动应用程序 info:[debug]试图杀死所有’uiautomator’进程 info:[debug]使用’uiautomator’获取所有进程 info:[debug]执行cmd:C:\ Users \ PG106 \ AppData \ Local \ Android \ sdk \ platform-tools \ adb.exe -s 300450adeedc3100 shell“ps’uiautomator’” info:[debug]找不到匹配的进程 info:[debug]运行bootstrap info:[debug]产生:C:\ Users \ PG106 \ AppData \ Local \ Android \ sdk \ platform-tools \ adb.exe -s 300450adeedc3100 shell […]

Rails:Selenium :: WebDriver :: Error :: WebDriverError:不可执行:’chromedriver-helper’

我两天前设置了Rails环境,我认为事情进展顺利但是当我运行rake test命令时,由于这个加载错误导致它被中止: Bundler::GemRequireError: There was an error while trying to load the gem ‘chromedriver-helper’` `Caused by: Selenium::WebDriver::Error::WebDriverError: not executable: “C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/chromedriver-helper-2.1.0/bin/chromedriver-helper” 我尝试过一些东西,但没有任何效果。 我重新安装了gem并更新了它。 然后我尝试安装它的旧版本。 我还试图在gem “chromedriver-helper”添加gem “selenium-webdriver”和gem “chromedriver-helper” 并在spec_helper.rb : Capybara.register_driver :selenium do |app| Capybara::Selenium::Driver.new(app, browser: :chrome) end 正如在github上提到但不确定我接下来应该尝试什么。 有人可以帮帮我吗? 谢谢。

Net :: ReadTimeout:Net :: ReadTimeout和Selenium :: WebDriver :: Error :: UnknownError:未知错误:Chrome无法启动Rails 5.1.beta系统测试

热衷于将Capybara烘焙到新版本的Rails(5.1)cf http://weblog.rubyonrails.org/2017/2/23/Rails-5-1-beta1/ 我遇到了一个问题。 这是我的步骤。 任何线索欢迎。 全新安装: Linux Ubuntu Desktop 16.10(Hyper-V上的VM),Chrome安装并运行正常; Ruby 2.4; Rails 5.1.beta。 1.-创建一个简单的应用程序: ~$ ruby -v ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux] ~$ rails -v Rails 5.1.0.beta1 ~$ mkdir railsapps ~$ cd railsapps ~/railsapps$ rails new smoketestapp ~/railsapps$ cd smoketestapp ~/railsapps/smoketestapp$ rails generate scaffold post title:string body:text ~/railsapps/smoketestapp$ rails db:migrate 2.-运行测试 ~/railsapps/smoketestapp$ cat […]

如何正确配置rails test以在浏览器中运行它? (site_prism,黄瓜,水豚,seleniumwebdriver)

我正在为rails app编写测试,我使用site_prism,capybara,selenium和cucumber。 如何设置Selenium驱动程序在浏览器(firefox)中运行我的测试? 例如,它是一个function: Given /^I navigate to Dashboard page$/ do @page = DashboardPage.new # Dashboardpage is inheritor of SitePrism::Page @page.load @page.login_form.login_field.set ‘admin’ @page.login_form.password_field.set ‘test’ @page.login_form.signin_button.click @page.title.include? ‘Dashboard’ end 这是我的features / support / env.rb配置文件: require ‘cucumber/rails’ require ‘capybara’ require ‘capybara/cucumber’ require ‘selenium-webdriver’ require ‘site_prism’ # cypabara settings Capybara.default_selector = :css Capybara.ignore_hidden_elements = false Capybara.default_wait_time = […]

Watir Webdriver(0.9.1)不再打开Firefox实例

使用Watir Webdriver v0.9.1 for rails(以及Selenium Webdriver 2.53.1)时,Firefox正在打开时 browser = Watir::Browser.new :firefox 被称为。 然而,现在它失败了 unable to bind to locking port 7054 within 45 seconds @ /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/common/socket_lock.rb:59:in `lock’ /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/common/socket_lock.rb:40:in `locked’ /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/firefox/launcher.rb:51:in `launch’ /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/firefox/bridge.rb:43:in `initialize’ /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/common/driver.rb:53:in `new’ /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/common/driver.rb:53:in `for’ /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver.rb:84:in `for’ /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/watir-webdriver-0.9.1/lib/watir-webdriver/browser.rb:46:in `initialize’ test/integration/like_fanpage_task_test.rb:40:in `new’ test/integration/like_fanpage_task_test.rb:40:in `block (2 levels) in ‘ 它似乎随机地这样做,因为我没有从其工作forms更改代码,并且该行是第一行调用。 我有Firefox 37.0.2,之前有效。 我已经尝试重新启动计算机,杀死与ruby和Firefox相关的进程并重新启动它们,然后重新安装Firefox但无济于事。

检测元素Selenium Webdriver的不一致性

我正在尝试运行自动化测试脚本(Selenium Webdriver2 + ruby​​),但最近遇到了一个奇怪的问题。 直到昨天完美无缺的脚本现在正在抛出“没有这样的元素exception”。 但是,当在firebug中检查时,路径肯定存在,并且应用程序中没有任何变化。 该脚本无法在以下代码中检测iframe2: – browser.manage.timeouts.implicit_wait = 20#秒 ############ GO TO OVERVIEW TAB ################ #Adding wait until quote is created and page is ready for content tab click. wait = Selenium::WebDriver::Wait.new(:timeout => 5) wait.until { browser.find_element(:id => “j_id0:tabDetailedContent_lbl”) } browser.find_element(:id => “j_id0:tabDetailedContent_lbl”).click iframe = browser.find_element(:id =>’CPQFrame’) browser.manage.timeouts.implicit_wait = 10 browser.switch_to.frame(iframe) browser.find_element(:css,”.processBarElement.noSelected”).click #frame.browser.find_element(:css,”.processBarElement.noSelected”).click […]

使用Selenium填写表单适用于Chrome但不适用于Firefox

我试图在Firefox中使用Selenium和ruby填写textarea,但由于某种原因,下面的代码不起作用。 当我将相同的脚本切换到Chrome驱动程序时,它确实有效。 browser.textarea(:placeholder => “Add a comment…”).set “#{randomly_chosen_comment}” 在Firefox上,我收到此错误: /Users/miajohansson/.rvm/gems/ruby-2.2.4/gems/watir-6.10.3/lib/watir/elements/element.rb:623:in `raise_present’: element located, but timed out after 30 seconds, waiting for #”Add a comment…”, :tag_name=>”textarea”}> to be present (Watir::Exception::UnknownObjectException) from /Users/miajohansson/.rvm/gems/ruby-2.2.4/gems/watir-6.10.3/lib/watir/elements/element.rb:669:in `rescue in element_call’ from /Users/miajohansson/.rvm/gems/ruby-2.2.4/gems/watir-6.10.3/lib/watir/elements/element.rb:680:in `element_call’ from /Users/miajohansson/.rvm/gems/ruby-2.2.4/gems/watir-6.10.3/lib/watir/user_editable.rb:11:in `set’ from instabot.rb:68:in `block (2 levels) in ‘ from instabot.rb:36:in `each’ from instabot.rb:36:in `block in ‘ […]

使用Selenium webdriver脚本发生Ruby’require’错误

我正在尝试执行一个脚本来测试一些用户凭据,并且我一直收到与’require’相关的错误。 该脚本获取用户名和密码的csv,将它们记录到站点中,并将它们分组为通过/失败列表。 我承认我没有写剧本 – 它是由外部编码人员提供给我们的。 我已经学习了几个CS101课程,并且可以解析它正在做的事情并为不同的域和凭证文件修改它,但我是一个完全ruby的初学者。 ========================= require ‘selenium-webdriver’ require ‘rubygems’ require ‘csv’ pass_file = File.open(‘pass.txt’, ‘w’) fail_file = File.open(‘fail.txt’, ‘w’) in_file = File.open(‘test credentials.csv’, ‘r’) pass_file.puts “xxxxxx” fail_file.puts “xxxxxx” CSV.foreach(in_file, :col_sep => ‘,’) do |row| driver = Selenium::WebDriver.for :firefox driver.get ‘https://www.xxxxxx.com/’ driver.find_element(:id => ‘UserNameEntry’).send_keys row[0] driver.find_element(:id => ‘UserPasswordEntry’).send_keys row[1] driver.find_element(:id => ‘xxxxxxlNameEntry’).clear driver.find_element(:id => […]

使用javascript executor为selenium webdriver ruby​​绑定脚本启用禁用字段

我正在编写Selenium Webdriver脚本中的Ruby代码,以通过Javascript执行器在UI上启用禁用字段。 browser.execute_script(“browser.find_element(:xpath,’/html/body/div[5]/div/div[3]/div[2]/div[2]/div/div/div/div/div/div/input’.disabled = false”) 但面对, `handleEvaluateEvent’:语法错误(Selenium :: WebDriver :: Error :: JavascriptError) 我的语法有什么问题? 任何帮助将不胜感激。 谢谢! 阿布舍克

Ruby中的Webdriver,如何检查元素是否存在

我在Ruby中使用Webdriver,我想validation页面上是否存在三个文本。 这是我要validation的html片段: many subtags test1 manny other test2 manny other test3 manny other > 如何使用在此页面上validation“test1”,“test2”和“test3” find_element find_elements getPageSource? 它的最佳方法是什么? 非常感谢你。