有一个简单的selenium脚本用于检查用户名是否可用,这里是代码
require "selenium-webdriver"
driver = Selenium::WebDriver.for :firefox
username = 'test'
driver.navigate.to url
fn = driver.find_element(:id, "first-name")
fn.send_keys "bla"
ln = driver.find_element(:id, "last-name")
ln.send_keys "bla"
un = driver.find_element(:id, "user-name")
un.send_keys username
p = driver.find_element(:id, "password")
p.click
sleep 3
if driver.find_element(:id=>"user-name-validation-message").text.include? "This username is not available."
puts "#{username} is good"
end
它工作正常,但它需要很多时间才能执行,大部分都是每次启动firefox,我想知道是否有办法在后台执行它或者是否有任何一种技巧来加速这个proccess。 假设我必须检查100个用户名,我需要大量的时间。 谢谢
答案 0 :(得分:0)
使用HTMLUnit Driver或PhantomJS执行Headless 考虑使用Implicity wait和PageToLoad,ScriptToLoad或Fluent Wait与您的实例化webdriver。