scoutui 2.0.4.2.pre → 2.0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +4 -2
- data/README.md +0 -7
- data/examples/ex1/phantom.chrome.json +4 -0
- data/examples/ex1/run.sh +85 -0
- data/examples/ex1/simple.yml +13 -0
- data/examples/ex1/win10.chromebeta.json +6 -0
- data/lib/scoutui/base/q_har_mgr.rb +63 -0
- data/lib/scoutui/base/visual_test_framework.rb +1 -1
- data/lib/scoutui/commands/strategy.rb +58 -64
- data/lib/scoutui/utils/utils.rb +6 -0
- data/lib/scoutui/version.rb +1 -1
- data/scoutui.gemspec +2 -3
- metadata +15 -58
- data/bin/scoutui_driver +0 -1
- data/examples/benchmark/ex.rb +0 -16
- data/examples/capabilities/win10.chrome46.json +0 -6
- data/examples/carmax/appmodel/search_results.json +0 -27
- data/examples/carmax/commands/commands.yml +0 -63
- data/examples/cmdshell/commands/hello.yml +0 -22
- data/examples/converters/jsonupdate.rb +0 -31
- data/examples/ex2/appmodel/common.json +0 -51
- data/examples/ex2/appmodel/page_model.json +0 -106
- data/examples/ex2/appmodel/register.model.json +0 -42
- data/examples/ex2/commands/commands.basic.appmodel.yml +0 -8
- data/examples/ex2/commands/commands.yml +0 -115
- data/examples/ex2/commands/ex1.yml +0 -7
- data/examples/ex2/commands/ex1c.yml +0 -8
- data/examples/ex2/commands/ex1d.yml +0 -22
- data/examples/ex2/commands/ex2.hover.yml +0 -43
- data/examples/ex2/commands/ex2.yml +0 -24
- data/examples/ex2/data.json +0 -6
- data/examples/ex2/test-configs/test.config.basic.json +0 -12
- data/examples/ex2/test-configs/test.config.json +0 -31
- data/examples/ex2/tests/run-test.sh +0 -125
- data/examples/ex2/tests/test-basic-appmodel.sh +0 -14
- data/examples/ex2/tests/test-example.sh +0 -39
- data/examples/ex2/tests/test-example1a.sh +0 -16
- data/examples/ex2/tests/test-example1b.sh +0 -13
- data/examples/ex2/tests/test-example1c.sh +0 -15
- data/examples/ex2/tests/test-example1d.sh +0 -15
- data/examples/ex2/tests/test-example2.forms.eyes.sh +0 -40
- data/examples/ex2/tests/test-example2.hover.eyes.sh +0 -40
- data/examples/ex2/tests/test-example2.hover.sh +0 -26
- data/examples/ex2/tests/test-example2.sh +0 -43
- data/examples/ex2/tests/test-example3.sauce.sh +0 -77
- data/examples/ex2/tests/test-example3.sh +0 -41
- data/examples/headless/run.sh +0 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c992aa713a0c469c5e31dd51b696eaefac62082c
|
4
|
+
data.tar.gz: a35ae4a239a24f26945513ca5a717eb8232bd424
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0c003f9524476eb6b223bcb557752dce215c8fe9b8c8c22e9aa633da4a1351e1387045e05a3ba236fa170dd0a4b037c51db4b8daf871fc839184278aa0700ca0
|
7
|
+
data.tar.gz: 288182fa5fc6fa3463a91662fa36bfaaf8a2702b6ad5eaa9b64186da3d22ae5114aba42cc82c02991b309205ca0f47bfa1929893fe2c26e12db3ce7e37d88c71
|
data/.gitignore
CHANGED
data/README.md
CHANGED
data/examples/ex1/run.sh
ADDED
@@ -0,0 +1,85 @@
|
|
1
|
+
#!/usr/bin/env bash
|
2
|
+
##
|
3
|
+
# H20Dragon
|
4
|
+
##
|
5
|
+
|
6
|
+
##
|
7
|
+
# Execute test on Chrome locally.
|
8
|
+
##
|
9
|
+
run_chrome()
|
10
|
+
{
|
11
|
+
CMD=$1
|
12
|
+
ruby $SCOUTUI_BIN --config ./test.config.json \
|
13
|
+
--browser chrome \
|
14
|
+
--host "http://www.elvis-presley.com" \
|
15
|
+
--viewport 800x600 \
|
16
|
+
--dut ${CMD} --debug
|
17
|
+
}
|
18
|
+
|
19
|
+
##
|
20
|
+
# Execute test on Firefox locally.
|
21
|
+
##
|
22
|
+
run_firefox()
|
23
|
+
{
|
24
|
+
CMD=$1
|
25
|
+
ruby $SCOUTUI_BIN --config ./test.config.json \
|
26
|
+
--browser firefox \
|
27
|
+
--host "http://www.elvis-presley.com" \
|
28
|
+
--viewport 800x600 \
|
29
|
+
--dut ${CMD} --debug
|
30
|
+
}
|
31
|
+
|
32
|
+
##
|
33
|
+
# Execute test on phantom (GhostDriver)
|
34
|
+
##
|
35
|
+
run_headless()
|
36
|
+
{
|
37
|
+
CMD=$1
|
38
|
+
ruby $SCOUTUI_BIN --config ./test.config.json \
|
39
|
+
--browser phantomjs \
|
40
|
+
--host "http://www.elvis-presley.com" \
|
41
|
+
--viewport 800x600 \
|
42
|
+
--dut ${CMD} --debug
|
43
|
+
}
|
44
|
+
|
45
|
+
|
46
|
+
##
|
47
|
+
# Run tests on ghostdriver (phantom) as defined in
|
48
|
+
# its capabilities file.
|
49
|
+
##
|
50
|
+
run_headless2()
|
51
|
+
{
|
52
|
+
CMD=$1
|
53
|
+
ruby $SCOUTUI_BIN --config ./test.config.json \
|
54
|
+
--capabilities ./phantom.chrome.json \
|
55
|
+
--host "http://www.elvis-presley.com" \
|
56
|
+
--viewport 800x600 \
|
57
|
+
--dut ${CMD} --debug
|
58
|
+
}
|
59
|
+
|
60
|
+
|
61
|
+
##
|
62
|
+
# Run a test on ghostdriver (phantom) defined by
|
63
|
+
# capabilities files, while taking screen shots.
|
64
|
+
##
|
65
|
+
run_screenshots_phantom()
|
66
|
+
{
|
67
|
+
CMD=$1
|
68
|
+
ruby $SCOUTUI_BIN --config ./test.config.json \
|
69
|
+
--capabilities ./phantom.chrome.json \
|
70
|
+
--screenshots:run true \
|
71
|
+
--screenshots:dir /tmp/phantom \
|
72
|
+
--host "http://www.elvis-presley.com" \
|
73
|
+
--viewport 800x600 \
|
74
|
+
--dut ${CMD} --debug
|
75
|
+
}
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
run_chrome ./simple.yml
|
80
|
+
run_firefox ./simple.yml
|
81
|
+
|
82
|
+
#run_headless ./simple.yml
|
83
|
+
#run_headless2 ./simple.yml
|
84
|
+
#run_screenshots_phantom ./simple.yml
|
85
|
+
|
@@ -0,0 +1,63 @@
|
|
1
|
+
require 'singleton'
|
2
|
+
#require 'browsermob/proxy'
|
3
|
+
|
4
|
+
|
5
|
+
module Scoutui::Base
|
6
|
+
|
7
|
+
class QHarMgr
|
8
|
+
include Singleton
|
9
|
+
|
10
|
+
attr_accessor :proxy_binary
|
11
|
+
attr_accessor :proxy
|
12
|
+
attr_accessor :seleniumProfile
|
13
|
+
|
14
|
+
|
15
|
+
def initialize()
|
16
|
+
puts __FILE__ + (__LINE__).to_s + " -- start BrowserMob --" if Scoutui::Utils::TestUtils.instance.isDebug?
|
17
|
+
@proxy_binary = BrowserMob::Proxy::Server.new(ENV['BROWSER_MOB_BIN'], { :port => 8088 })
|
18
|
+
end
|
19
|
+
|
20
|
+
def start()
|
21
|
+
puts __FILE__ + (__LINE__).to_s + " --start --"
|
22
|
+
@proxy_binary.start
|
23
|
+
@proxy = @proxy_binary.create_proxy
|
24
|
+
@seleniumProfile = @proxy.selenium_proxy # Needed by Selenium instance
|
25
|
+
|
26
|
+
@proxy.new_har(:capture_headers => true)
|
27
|
+
end
|
28
|
+
|
29
|
+
|
30
|
+
def getSeleniumProfile()
|
31
|
+
puts __FILE__ + (__LINE__).to_s + " == getSeleniumProfile() => #{@seleniumProfile} --"
|
32
|
+
@seleniumProfile
|
33
|
+
end
|
34
|
+
|
35
|
+
def stop(save_as=nil)
|
36
|
+
puts __FILE__ + (__LINE__).to_s + " -- stop(#{save_as.to_s} --"
|
37
|
+
# @proxy.close
|
38
|
+
|
39
|
+
if !save_as.nil?
|
40
|
+
@proxy.har.save_to(save_as)
|
41
|
+
end
|
42
|
+
|
43
|
+
@proxy.close
|
44
|
+
end
|
45
|
+
|
46
|
+
def capture_traffic
|
47
|
+
# @proxy.new_har
|
48
|
+
yield
|
49
|
+
@proxy.har
|
50
|
+
end
|
51
|
+
|
52
|
+
def run(n)
|
53
|
+
puts __FILE__ + (__LINE__).to_s + " -- run --"
|
54
|
+
@har = capture_traffic { yield }
|
55
|
+
# @proxy.close
|
56
|
+
# @har.save_to(n)
|
57
|
+
end
|
58
|
+
|
59
|
+
|
60
|
+
end
|
61
|
+
|
62
|
+
|
63
|
+
end
|
@@ -987,7 +987,7 @@ module Scoutui::Base
|
|
987
987
|
|
988
988
|
Scoutui::Commands::Utils.instance.reset(e)
|
989
989
|
|
990
|
-
|
990
|
+
Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " page => #{e}"
|
991
991
|
|
992
992
|
if e[STEP_KEY].has_key?("timeout")
|
993
993
|
Scoutui::Commands::Utils.instance.setTimeout(e[STEP_KEY]["timeout"])
|
@@ -5,6 +5,15 @@ module Scoutui::Commands
|
|
5
5
|
|
6
6
|
class Strategy
|
7
7
|
|
8
|
+
USER_AGENTS = {
|
9
|
+
'MAC_CHROME' => 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.98 Safari/537.36',
|
10
|
+
'WIN81_IE11' => 'Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv 11.0) like Gecko',
|
11
|
+
'WIN7_IE10' => 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)',
|
12
|
+
'WIN10_EDGE13' => '#Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Safari/537.36 Edge/13.10586',
|
13
|
+
'WIN10_CHROME_BETA' => 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.21 Safari/537.36',
|
14
|
+
'YOSE_CHROME_BETA' => 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.98 Safari/537.36'
|
15
|
+
}
|
16
|
+
|
8
17
|
attr_accessor :drv
|
9
18
|
attr_accessor :profile
|
10
19
|
|
@@ -23,6 +32,22 @@ module Scoutui::Commands
|
|
23
32
|
rc
|
24
33
|
end
|
25
34
|
|
35
|
+
def isHeadlessBrowser?(browserType)
|
36
|
+
!browserType.match(/(phantom|phantomjs|ghost|ghostdriver)/i).nil?
|
37
|
+
end
|
38
|
+
|
39
|
+
def isHeadlessCap?(caps)
|
40
|
+
!caps.nil? && caps.has_key?(:browser) && isHeadlessBrowser?(caps[:browser])
|
41
|
+
end
|
42
|
+
|
43
|
+
def setViewport()
|
44
|
+
_viewport = Scoutui::Utils::TestUtils.instance.getViewPort()
|
45
|
+
if !_viewport.nil?
|
46
|
+
target_size = Selenium::WebDriver::Dimension.new(_viewport[:width], _viewport[:height])
|
47
|
+
getDriver().manage.window.size = target_size
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
26
51
|
def navigate(url)
|
27
52
|
Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " [enter]:navigate(#{url})"
|
28
53
|
rc = false
|
@@ -96,26 +121,15 @@ module Scoutui::Commands
|
|
96
121
|
browserType = Scoutui::Base::UserVars.instance.getBrowserType()
|
97
122
|
caps = Scoutui::Utils::TestUtils.instance.getCapabilities()
|
98
123
|
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
@profile = Selenium::WebDriver::Firefox::Profile.new
|
104
|
-
elsif !browserType.to_s.match(/ie/i).nil?
|
105
|
-
@profile = Selenium::WebDriver::IE::Profile.new
|
106
|
-
elsif !browserType.to_s.match(/safari/i).nil?
|
107
|
-
@profile = Selenium::WebDriver::Safari::Profile.new
|
108
|
-
else
|
109
|
-
@profile = Selenium::WebDriver::Firefox::Profile.new
|
110
|
-
browserType='firefox'
|
111
|
-
end
|
124
|
+
##
|
125
|
+
# If running on Sauce, we need the capabilities.
|
126
|
+
##
|
127
|
+
if Scoutui::Utils::TestUtils.instance.sauceEnabled?
|
112
128
|
|
113
|
-
Scoutui::
|
114
|
-
end
|
129
|
+
caps = Scoutui::Utils::TestUtils.instance.getSauceCaps()
|
115
130
|
|
116
|
-
|
131
|
+
caps = Scoutui::Utils::TestUtils.instance.getCapabilities() if caps.nil?
|
117
132
|
|
118
|
-
caps = Scoutui::Utils::TestUtils.instance.getCapabilities()
|
119
133
|
client=nil
|
120
134
|
proxy=nil
|
121
135
|
|
@@ -223,7 +237,7 @@ module Scoutui::Commands
|
|
223
237
|
|
224
238
|
begin
|
225
239
|
if client.nil?
|
226
|
-
|
240
|
+
Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " caps => #{caps}"
|
227
241
|
@drv=Selenium::WebDriver.for :remote, :url => sauce_endpoint, :desired_capabilities => caps # setup(caps)
|
228
242
|
else
|
229
243
|
@drv=Selenium::WebDriver.for :remote, :url => sauce_endpoint, :http_client => client, :desired_capabilities => caps # setup(caps)
|
@@ -239,71 +253,51 @@ module Scoutui::Commands
|
|
239
253
|
# https://wiki.saucelabs.com/display/DOCS/Setting+Up+Reporting+between+Sauce+Labs+and+Jenkins
|
240
254
|
puts "SauceOnDemandSessionID=#{@drv.session_id} job-name=#{caps[:name]}"
|
241
255
|
|
242
|
-
elsif !caps.nil? && caps.has_key?(:browser) && caps[:browser].match(/(phantom|phantomjs|ghost|ghostdriver)/i)
|
243
256
|
|
244
|
-
|
245
|
-
_cap=Selenium::WebDriver::Remote::Capabilities.phantomjs('phantomjs.page.settings.userAgent' => _YosemiteChromeBeta)
|
257
|
+
elsif isHeadlessCap?(caps) || isHeadlessBrowser?(browserType)
|
246
258
|
|
247
|
-
|
248
|
-
selenium_server=Scoutui::Utils::TestUtils.instance.getSeleniumServer()
|
249
|
-
selenium_server='http://localhost:8001' if selenium_server.nil?
|
259
|
+
Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " Headless browser : <caps, browser>::<#{caps}, #{browserType}>"
|
250
260
|
|
251
|
-
|
252
|
-
_cap=Selenium::WebDriver::Remote::Capabilities.phantomjs('phantomjs.page.settings.userAgent' => caps[:useragent])
|
253
|
-
end
|
261
|
+
_cap=Selenium::WebDriver::Remote::Capabilities.phantomjs('phantomjs.page.settings.userAgent' => USER_AGENTS['YOSE_CHROME_BETA'])
|
254
262
|
|
255
|
-
@drv=Selenium::WebDriver.for :remote, :url => selenium_server, :desired_capabilities => _cap
|
256
263
|
|
257
|
-
|
258
|
-
|
259
|
-
target_size = Selenium::WebDriver::Dimension.new(_viewport[:width], _viewport[:height])
|
260
|
-
@drv.manage.window.size = target_size
|
261
|
-
end
|
264
|
+
selenium_server=Scoutui::Utils::TestUtils.instance.getSeleniumServer()
|
265
|
+
selenium_server='http://localhost:8001' if selenium_server.nil?
|
262
266
|
|
267
|
+
if isHeadlessCap?(caps) && caps.has_key?(:useragent)
|
268
|
+
_cap=Selenium::WebDriver::Remote::Capabilities.phantomjs('phantomjs.page.settings.userAgent' => caps[:useragent])
|
263
269
|
end
|
264
270
|
|
271
|
+
Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " Headless capabilities : #{_cap}"
|
265
272
|
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
##
|
274
|
-
# caps
|
275
|
-
##
|
276
|
-
_useragentChromeOnMac='Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.98 Safari/537.36'
|
277
|
-
_useragentWin81IE11='Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv 11.0) like Gecko'
|
273
|
+
_connected=false
|
274
|
+
_tm={:start => Time.now, :end => nil }
|
275
|
+
begin
|
276
|
+
@drv=Selenium::WebDriver.for :remote, :url => selenium_server, :desired_capabilities => _cap
|
277
|
+
_tm[:end]=Time.now
|
278
|
+
_connected=true
|
279
|
+
setViewport()
|
278
280
|
|
279
|
-
|
281
|
+
rescue Errno::ECONNREFUSED => ex
|
282
|
+
Scoutui::Logger::LogMgr.instance.fatal __FILE__ + (__LINE__).to_s + " Unable to connect to GhostDriver"
|
280
283
|
|
281
|
-
|
284
|
+
Scoutui::Utils::TestUtils.instance.setState(:abort, __FILE__ + (__LINE__).to_s + " Unable to connect to GhostDriver : #{ex.class.to_s}: #{ex}")
|
282
285
|
|
283
|
-
|
284
|
-
|
286
|
+
rescue => ex
|
287
|
+
Scoutui::Utils::TestUtils.instance.setState(:abort, __FILE__ + (__LINE__).to_s + " : #{ex.class.to_s}: #{ex}")
|
288
|
+
Scoutui::Logger::LogMgr.instance.warn __FILE__ + (__LINE__).to_s + " #{ex.class.to_s} Error during processing: #{ex}"
|
289
|
+
Scoutui::Logger::LogMgr.instance.warn ex.backtrace
|
290
|
+
end
|
285
291
|
|
286
|
-
|
292
|
+
_tm[:end]=Time.now if _tm[:end].nil?
|
287
293
|
|
288
|
-
|
289
|
-
# @drv=Selenium::WebDriver.for :phantomjs, :url => selenium_server, :desired_capabilities => caps
|
290
|
-
@drv=Selenium::WebDriver.for :remote, :url => selenium_server, :desired_capabilities => caps
|
294
|
+
Testmgr::TestReport.instance.getReq('Execution').tc('Status').add(_connected, "Connect to GhostDriver on #{selenium_server}", _tm[:end] - _tm[:start])
|
291
295
|
|
292
|
-
_viewport = Scoutui::Utils::TestUtils.instance.getViewPort()
|
293
|
-
if !_viewport.nil?
|
294
|
-
target_size = Selenium::WebDriver::Dimension.new(_viewport[:width], _viewport[:height])
|
295
|
-
@drv.manage.window.size = target_size
|
296
|
-
end
|
297
296
|
|
298
297
|
else
|
299
298
|
Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " Create WebDriver: #{browserType.to_s}"
|
300
299
|
@drv=Selenium::WebDriver.for browserType.to_sym, :profile => @profile
|
301
|
-
|
302
|
-
_viewport = Scoutui::Utils::TestUtils.instance.getViewPort()
|
303
|
-
if !_viewport.nil?
|
304
|
-
target_size = Selenium::WebDriver::Dimension.new(_viewport[:width], _viewport[:height])
|
305
|
-
@drv.manage.window.size = target_size
|
306
|
-
end
|
300
|
+
setViewport()
|
307
301
|
|
308
302
|
end
|
309
303
|
|
data/lib/scoutui/utils/utils.rb
CHANGED
@@ -299,6 +299,7 @@ module Scoutui::Utils
|
|
299
299
|
@options[:enable_sauce] = !o.match(/true/i).nil?
|
300
300
|
}
|
301
301
|
opt.on('--sauce_name NAME') { |o| @options[:sauce_name] = o }
|
302
|
+
opt.on('--sauce:capabilities Capabilities') { |o| @options[:sauce_capabilities] = o }
|
302
303
|
opt.on('--sauce:name NAME') { |o| @options[:sauce_name] = o }
|
303
304
|
opt.on('--sauce:build id') { |o| @options[:sauce_build] = o }
|
304
305
|
opt.on('--sauce:browser Browser') { |o| @options[:sauce_browser] = o }
|
@@ -316,6 +317,7 @@ module Scoutui::Utils
|
|
316
317
|
end.parse!
|
317
318
|
|
318
319
|
if Scoutui::Utils::TestUtils.instance.isDebug?
|
320
|
+
Scoutui::Logger::LogMgr.instance.info __FILE__ + (__LINE__).to_s + " ScoutUI Version : " + Scoutui::VERSION
|
319
321
|
Scoutui::Logger::LogMgr.instance.info __FILE__ + (__LINE__).to_s + " " + @options.to_s
|
320
322
|
Scoutui::Logger::LogMgr.instance.info "Test file => #{@options[:test_file]}"
|
321
323
|
Scoutui::Logger::LogMgr.instance.info "Host => #{@options[:host]}"
|
@@ -474,6 +476,10 @@ module Scoutui::Utils
|
|
474
476
|
@options[:retries]
|
475
477
|
end
|
476
478
|
|
479
|
+
def getSauceCaps()
|
480
|
+
@options[:sauce_capabilities]
|
481
|
+
end
|
482
|
+
|
477
483
|
def getSauceName()
|
478
484
|
@options[:sauce_name].to_s
|
479
485
|
end
|
data/lib/scoutui/version.rb
CHANGED
data/scoutui.gemspec
CHANGED
@@ -32,9 +32,8 @@ Gem::Specification.new do |spec|
|
|
32
32
|
spec.add_development_dependency "json", ">= 1.8.3"
|
33
33
|
spec.add_development_dependency "faker"
|
34
34
|
spec.add_development_dependency "logging"
|
35
|
-
spec.add_development_dependency "sauce_whisk"
|
35
|
+
spec.add_development_dependency "sauce_whisk", "0.0.21"
|
36
36
|
spec.add_development_dependency "testmgr", ">= 0.3.2.pre"
|
37
|
-
spec.add_development_dependency "
|
38
|
-
spec.add_development_dependency "DataMgr", ">= 0.1.1.1.pre"
|
37
|
+
spec.add_development_dependency "DataMgr", ">=0.2.0"
|
39
38
|
spec.add_development_dependency "CmdShellMgr", ">= 0.1.1.2.pre"
|
40
39
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: scoutui
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter Kim
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-12-
|
11
|
+
date: 2016-12-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -154,16 +154,16 @@ dependencies:
|
|
154
154
|
name: sauce_whisk
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
156
156
|
requirements:
|
157
|
-
- -
|
157
|
+
- - '='
|
158
158
|
- !ruby/object:Gem::Version
|
159
|
-
version:
|
159
|
+
version: 0.0.21
|
160
160
|
type: :development
|
161
161
|
prerelease: false
|
162
162
|
version_requirements: !ruby/object:Gem::Requirement
|
163
163
|
requirements:
|
164
|
-
- -
|
164
|
+
- - '='
|
165
165
|
- !ruby/object:Gem::Version
|
166
|
-
version:
|
166
|
+
version: 0.0.21
|
167
167
|
- !ruby/object:Gem::Dependency
|
168
168
|
name: testmgr
|
169
169
|
requirement: !ruby/object:Gem::Requirement
|
@@ -178,34 +178,20 @@ dependencies:
|
|
178
178
|
- - ">="
|
179
179
|
- !ruby/object:Gem::Version
|
180
180
|
version: 0.3.2.pre
|
181
|
-
- !ruby/object:Gem::Dependency
|
182
|
-
name: tiny_tds
|
183
|
-
requirement: !ruby/object:Gem::Requirement
|
184
|
-
requirements:
|
185
|
-
- - ">="
|
186
|
-
- !ruby/object:Gem::Version
|
187
|
-
version: '0'
|
188
|
-
type: :development
|
189
|
-
prerelease: false
|
190
|
-
version_requirements: !ruby/object:Gem::Requirement
|
191
|
-
requirements:
|
192
|
-
- - ">="
|
193
|
-
- !ruby/object:Gem::Version
|
194
|
-
version: '0'
|
195
181
|
- !ruby/object:Gem::Dependency
|
196
182
|
name: DataMgr
|
197
183
|
requirement: !ruby/object:Gem::Requirement
|
198
184
|
requirements:
|
199
185
|
- - ">="
|
200
186
|
- !ruby/object:Gem::Version
|
201
|
-
version: 0.
|
187
|
+
version: 0.2.0
|
202
188
|
type: :development
|
203
189
|
prerelease: false
|
204
190
|
version_requirements: !ruby/object:Gem::Requirement
|
205
191
|
requirements:
|
206
192
|
- - ">="
|
207
193
|
- !ruby/object:Gem::Version
|
208
|
-
version: 0.
|
194
|
+
version: 0.2.0
|
209
195
|
- !ruby/object:Gem::Dependency
|
210
196
|
name: CmdShellMgr
|
211
197
|
requirement: !ruby/object:Gem::Requirement
|
@@ -237,46 +223,16 @@ files:
|
|
237
223
|
- README.md
|
238
224
|
- Rakefile
|
239
225
|
- bin/console
|
240
|
-
- bin/scoutui_driver
|
241
226
|
- bin/scoutui_driver.rb
|
242
227
|
- bin/setup
|
243
|
-
- examples/benchmark/ex.rb
|
244
|
-
- examples/capabilities/win10.chrome46.json
|
245
|
-
- examples/carmax/appmodel/search_results.json
|
246
|
-
- examples/carmax/commands/commands.yml
|
247
|
-
- examples/cmdshell/commands/hello.yml
|
248
|
-
- examples/converters/jsonupdate.rb
|
249
228
|
- examples/ex1/commands.holidays.yml
|
250
229
|
- examples/ex1/commands.yml
|
230
|
+
- examples/ex1/phantom.chrome.json
|
231
|
+
- examples/ex1/run.sh
|
232
|
+
- examples/ex1/simple.yml
|
251
233
|
- examples/ex1/test-example.sh
|
252
234
|
- examples/ex1/test.config.json
|
253
|
-
- examples/
|
254
|
-
- examples/ex2/appmodel/page_model.json
|
255
|
-
- examples/ex2/appmodel/register.model.json
|
256
|
-
- examples/ex2/commands/commands.basic.appmodel.yml
|
257
|
-
- examples/ex2/commands/commands.yml
|
258
|
-
- examples/ex2/commands/ex1.yml
|
259
|
-
- examples/ex2/commands/ex1c.yml
|
260
|
-
- examples/ex2/commands/ex1d.yml
|
261
|
-
- examples/ex2/commands/ex2.hover.yml
|
262
|
-
- examples/ex2/commands/ex2.yml
|
263
|
-
- examples/ex2/data.json
|
264
|
-
- examples/ex2/test-configs/test.config.basic.json
|
265
|
-
- examples/ex2/test-configs/test.config.json
|
266
|
-
- examples/ex2/tests/run-test.sh
|
267
|
-
- examples/ex2/tests/test-basic-appmodel.sh
|
268
|
-
- examples/ex2/tests/test-example.sh
|
269
|
-
- examples/ex2/tests/test-example1a.sh
|
270
|
-
- examples/ex2/tests/test-example1b.sh
|
271
|
-
- examples/ex2/tests/test-example1c.sh
|
272
|
-
- examples/ex2/tests/test-example1d.sh
|
273
|
-
- examples/ex2/tests/test-example2.forms.eyes.sh
|
274
|
-
- examples/ex2/tests/test-example2.hover.eyes.sh
|
275
|
-
- examples/ex2/tests/test-example2.hover.sh
|
276
|
-
- examples/ex2/tests/test-example2.sh
|
277
|
-
- examples/ex2/tests/test-example3.sauce.sh
|
278
|
-
- examples/ex2/tests/test-example3.sh
|
279
|
-
- examples/headless/run.sh
|
235
|
+
- examples/ex1/win10.chromebeta.json
|
280
236
|
- lib/scoutui.rb
|
281
237
|
- lib/scoutui/appmodel/q_model.rb
|
282
238
|
- lib/scoutui/base/assertions.rb
|
@@ -284,6 +240,7 @@ files:
|
|
284
240
|
- lib/scoutui/base/q_applitools.rb
|
285
241
|
- lib/scoutui/base/q_browser.rb
|
286
242
|
- lib/scoutui/base/q_form.rb
|
243
|
+
- lib/scoutui/base/q_har_mgr.rb
|
287
244
|
- lib/scoutui/base/requirements.rb
|
288
245
|
- lib/scoutui/base/test_context.rb
|
289
246
|
- lib/scoutui/base/test_data.rb
|
@@ -346,9 +303,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
346
303
|
version: '0'
|
347
304
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
348
305
|
requirements:
|
349
|
-
- - "
|
306
|
+
- - ">="
|
350
307
|
- !ruby/object:Gem::Version
|
351
|
-
version:
|
308
|
+
version: '0'
|
352
309
|
requirements: []
|
353
310
|
rubyforge_project:
|
354
311
|
rubygems_version: 2.6.2
|
data/bin/scoutui_driver
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
scoutui_driver.rb
|
data/examples/benchmark/ex.rb
DELETED
@@ -1,27 +0,0 @@
|
|
1
|
-
{
|
2
|
-
|
3
|
-
|
4
|
-
"search_results": {
|
5
|
-
|
6
|
-
|
7
|
-
"results": {
|
8
|
-
|
9
|
-
"header": {
|
10
|
-
"reqid": "REQ-HEADER",
|
11
|
-
"locator": "//span[text()='Applied filters']",
|
12
|
-
"visible_when": "title(Search Results)"
|
13
|
-
}
|
14
|
-
|
15
|
-
|
16
|
-
}
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
}
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
}
|