Class: Selenium::Rake::RemoteControlStartTask
- Inherits:
-
Object
- Object
- Selenium::Rake::RemoteControlStartTask
- Defined in:
- lib/selenium/rake/remote_control_start_task.rb
Overview
Rake tasks to start a Remote Control server.
require ‘selenium/rake/tasks’
Selenium::Rake::RemoteControlStartTask.new do |rc|
rc.port = 4444
rc.timeout_in_seconds = 3 * 60
rc.background = true
rc.wait_until_up_and_running = true
rc.jar_file = "/path/to/where/selenium-rc-standalone-jar-is-installed"
rc.additional_args << "-singleWindow"
end
If you do not explicitly specify the path to selenium remote control jar it will be “auto-discovered” in ‘vendor` directory using the following path : `vendor/selenium-remote-control/selenium-server*-standalone.jar`
To leverage the latest selenium-client capabilities, you may need to download a recent nightly build of a standalone packaging of Selenium Remote Control. You will find the nightly build at nexus.openqa.org/content/repositories/snapshots/org/seleniumhq/selenium/server/selenium-server/
Constant Summary collapse
- JAR_FILE_PATTERN =
"vendor/selenium-remote-control/selenium-server-*.jar"
Instance Attribute Summary collapse
-
#additional_args ⇒ Object
Returns the value of attribute additional_args.
-
#background ⇒ Object
Returns the value of attribute background.
-
#host ⇒ Object
Returns the value of attribute host.
-
#jar_file ⇒ Object
Returns the value of attribute jar_file.
-
#log_to ⇒ Object
Returns the value of attribute log_to.
-
#port ⇒ Object
Returns the value of attribute port.
-
#timeout_in_seconds ⇒ Object
Returns the value of attribute timeout_in_seconds.
-
#wait_until_up_and_running ⇒ Object
Returns the value of attribute wait_until_up_and_running.
Instance Method Summary collapse
- #define ⇒ Object
-
#initialize(name = :'selenium:rc:start') {|_self| ... } ⇒ RemoteControlStartTask
constructor
A new instance of RemoteControlStartTask.
Constructor Details
#initialize(name = :'selenium:rc:start') {|_self| ... } ⇒ RemoteControlStartTask
Returns a new instance of RemoteControlStartTask.
33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/selenium/rake/remote_control_start_task.rb', line 33 def initialize(name = :'selenium:rc:start') @name = name @host = "localhost" @port = 4444 @timeout_in_seconds = 5 project_specific_jar = Dir[JAR_FILE_PATTERN].first @jar_file = project_specific_jar @additional_args = [] @background = false @wait_until_up_and_running = false yield self if block_given? define end |
Instance Attribute Details
#additional_args ⇒ Object
Returns the value of attribute additional_args.
26 27 28 |
# File 'lib/selenium/rake/remote_control_start_task.rb', line 26 def additional_args @additional_args end |
#background ⇒ Object
Returns the value of attribute background.
26 27 28 |
# File 'lib/selenium/rake/remote_control_start_task.rb', line 26 def background @background end |
#host ⇒ Object
Returns the value of attribute host.
26 27 28 |
# File 'lib/selenium/rake/remote_control_start_task.rb', line 26 def host @host end |
#jar_file ⇒ Object
Returns the value of attribute jar_file.
29 30 31 |
# File 'lib/selenium/rake/remote_control_start_task.rb', line 29 def jar_file @jar_file end |
#log_to ⇒ Object
Returns the value of attribute log_to.
26 27 28 |
# File 'lib/selenium/rake/remote_control_start_task.rb', line 26 def log_to @log_to end |
#port ⇒ Object
Returns the value of attribute port.
26 27 28 |
# File 'lib/selenium/rake/remote_control_start_task.rb', line 26 def port @port end |
#timeout_in_seconds ⇒ Object
Returns the value of attribute timeout_in_seconds.
26 27 28 |
# File 'lib/selenium/rake/remote_control_start_task.rb', line 26 def timeout_in_seconds @timeout_in_seconds end |
#wait_until_up_and_running ⇒ Object
Returns the value of attribute wait_until_up_and_running.
26 27 28 |
# File 'lib/selenium/rake/remote_control_start_task.rb', line 26 def wait_until_up_and_running @wait_until_up_and_running end |
Instance Method Details
#define ⇒ Object
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
# File 'lib/selenium/rake/remote_control_start_task.rb', line 51 def define desc "Launch Selenium Remote Control" task @name do puts "Starting Selenium Remote Control at 0.0.0.0:#{@port}..." raise "Could not find jar file '#{@jar_file}'. Expected it under #{JAR_FILE_PATTERN}" unless @jar_file && File.exists?(@jar_file) remote_control = Selenium::RemoteControl::RemoteControl.new("0.0.0.0", @port, :timeout => @timeout_in_seconds) remote_control.jar_file = @jar_file remote_control.additional_args = @additional_args remote_control.log_to = @log_to remote_control.start :background => @background if @background && @wait_until_up_and_running puts "Waiting for Remote Control to be up and running..." TCPSocket.wait_for_service :host => @host, :port => @port end puts "Selenium Remote Control at 0.0.0.0:#{@port} ready" end end |