Class: Selenium::Rake::ServerTask

Inherits:
Object
  • Object
show all
Includes:
Rake::DSL
Defined in:
lib/selenium/rake/server_task.rb

Overview

Defines rake tasks for starting, stopping and restarting the Selenium server.

Usage:

require 'selenium/rake/server_task'

Selenium::Rake::ServerTask.new do |t|
  t.jar = "/path/to/selenium-server-standalone.jar"
  t.port = 4444
  t.opts = %w[-some options]
end

Alternatively, you can have the task download a specific version of the server:

Selenium::Rake::ServerTask.new(:server) do |t|
  t.version = '2.6.0'
end

or the latest version

Selenium::Rake::ServerTask.new(:server) do |t|
  t.version = :latest
end

Tasks defined:

rake selenium:server:start
rake selenium:server:stop
rake selenium:server:restart

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(prefix = "selenium:server") {|_self| ... } ⇒ ServerTask

Returns a new instance of ServerTask.

Yields:

  • (_self)

Yield Parameters:



116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
# File 'lib/selenium/rake/server_task.rb', line 116

def initialize(prefix = "selenium:server")
  @jar = nil
  @prefix = prefix
  @port = 4444
  @timeout = 30
  @background = true
  @log = true
  @opts = []
  @version = nil

  yield self if block_given?

  if @version
    @jar = Selenium::Server.download(@version)
  end

  unless @jar
    raise MissingJarFileError, "must provide path to the selenium server jar"
  end

  @server = Selenium::Server.new(@jar, :port       => @port,
                                       :timeout    => @timeout,
                                       :background => @background,
                                       :log        => @log )

  @server << @opts

  define_start_task
  define_stop_task
  define_restart_task
end

Instance Attribute Details

#backgroundObject Also known as: background?

Whether we should detach from the server process. Default: true



89
90
91
# File 'lib/selenium/rake/server_task.rb', line 89

def background
  @background
end

#jarObject

Path to the selenium server jar



67
68
69
# File 'lib/selenium/rake/server_task.rb', line 67

def jar
  @jar
end

#logObject

Configure logging. Pass a log file path or a boolean. Default: true

true - log to stdout/stderr false - no logging String - log to the specified file



101
102
103
# File 'lib/selenium/rake/server_task.rb', line 101

def log
  @log
end

#optsObject

Add additional options passed to the server jar.



107
108
109
# File 'lib/selenium/rake/server_task.rb', line 107

def opts
  @opts
end

#portObject

Port to use for the server. Default: 4444



75
76
77
# File 'lib/selenium/rake/server_task.rb', line 75

def port
  @port
end

#timeoutObject

Timeout in seconds for the server to start/stop. Default: 30



82
83
84
# File 'lib/selenium/rake/server_task.rb', line 82

def timeout
  @timeout
end

#versionObject

Specify the version of the server jar to download



113
114
115
# File 'lib/selenium/rake/server_task.rb', line 113

def version
  @version
end