crash_monkey 0.1.7 → 0.2.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 +7 -0
- data/Gemfile +5 -1
- data/Gemfile.lock +22 -19
- data/README.md +102 -20
- data/Rakefile +11 -3
- data/bin/crash_monkey +2 -0
- data/crash_monkey.gemspec +6 -2
- data/lib/crash_monkey/monkey_runner.rb +17 -0
- metadata +105 -136
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: d470a651eddb157e7ac2731e05540776be327c65
|
4
|
+
data.tar.gz: dd44b5fadd94a093c47b2e4841976519ca28988b
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 3266dfc8968cd88839a926976a0cfa71dbc36f4992a1271070d706ffb257be8c4c1c2e71aecb4b7488e5aad2d11231d2356c386fe4ab7c6b7da0d7d0a1dd08d3
|
7
|
+
data.tar.gz: 26e71a962b45f54fa00d8d911fcca4224c24ad74ac33d1889d18182a4db947ac391947763671b450ea17bbe0ce0c0337281040f25894bafcfdcc9aa1715fd83d
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,13 +1,14 @@
|
|
1
1
|
GEM
|
2
2
|
remote: http://rubygems.org/
|
3
3
|
specs:
|
4
|
-
addressable (2.3.
|
4
|
+
addressable (2.3.6)
|
5
5
|
builder (3.2.2)
|
6
6
|
diff-lcs (1.1.3)
|
7
|
+
docile (1.1.3)
|
7
8
|
erubis (2.7.0)
|
8
|
-
faraday (0.8.
|
9
|
-
multipart-post (~> 1.
|
10
|
-
git (1.2.
|
9
|
+
faraday (0.8.9)
|
10
|
+
multipart-post (~> 1.2.0)
|
11
|
+
git (1.2.6)
|
11
12
|
github_api (0.10.1)
|
12
13
|
addressable
|
13
14
|
faraday (~> 0.8.1)
|
@@ -16,9 +17,8 @@ GEM
|
|
16
17
|
nokogiri (~> 1.5.2)
|
17
18
|
oauth2
|
18
19
|
hashie (2.0.5)
|
19
|
-
highline (1.6.
|
20
|
-
|
21
|
-
jeweler (1.8.6)
|
20
|
+
highline (1.6.21)
|
21
|
+
jeweler (1.8.8)
|
22
22
|
builder
|
23
23
|
bundler (~> 1.0)
|
24
24
|
git (>= 1.2.5)
|
@@ -27,23 +27,21 @@ GEM
|
|
27
27
|
nokogiri (= 1.5.10)
|
28
28
|
rake
|
29
29
|
rdoc
|
30
|
-
json (1.8.
|
31
|
-
jwt (0.1.
|
30
|
+
json (1.8.1)
|
31
|
+
jwt (0.1.11)
|
32
32
|
multi_json (>= 1.5)
|
33
|
-
multi_json (1.
|
34
|
-
multi_xml (0.5.
|
33
|
+
multi_json (1.9.2)
|
34
|
+
multi_xml (0.5.5)
|
35
35
|
multipart-post (1.2.0)
|
36
36
|
nokogiri (1.5.10)
|
37
|
-
oauth2 (0.9.
|
38
|
-
faraday (
|
39
|
-
|
40
|
-
|
41
|
-
multi_json (~> 1.0)
|
37
|
+
oauth2 (0.9.3)
|
38
|
+
faraday (>= 0.8, < 0.10)
|
39
|
+
jwt (~> 0.1.8)
|
40
|
+
multi_json (~> 1.3)
|
42
41
|
multi_xml (~> 0.5)
|
43
42
|
rack (~> 1.2)
|
44
43
|
rack (1.5.2)
|
45
|
-
rake (10.
|
46
|
-
rcov (1.0.0)
|
44
|
+
rake (10.2.2)
|
47
45
|
rdoc (3.12.2)
|
48
46
|
json (~> 1.4)
|
49
47
|
rspec (2.8.0)
|
@@ -54,6 +52,11 @@ GEM
|
|
54
52
|
rspec-expectations (2.8.0)
|
55
53
|
diff-lcs (~> 1.1.2)
|
56
54
|
rspec-mocks (2.8.0)
|
55
|
+
simplecov (0.8.2)
|
56
|
+
docile (~> 1.1.0)
|
57
|
+
multi_json
|
58
|
+
simplecov-html (~> 0.8.0)
|
59
|
+
simplecov-html (0.8.0)
|
57
60
|
|
58
61
|
PLATFORMS
|
59
62
|
ruby
|
@@ -63,6 +66,6 @@ DEPENDENCIES
|
|
63
66
|
erubis (>= 2.7.0)
|
64
67
|
jeweler (~> 1.8.4)
|
65
68
|
json (>= 1.7.0)
|
66
|
-
rcov
|
67
69
|
rdoc (~> 3.12)
|
68
70
|
rspec (~> 2.8.0)
|
71
|
+
simplecov (>= 0.8.2)
|
data/README.md
CHANGED
@@ -1,24 +1,42 @@
|
|
1
1
|
CrashMonkey
|
2
2
|
===========
|
3
|
+
[Japanese](README_jp.md)
|
3
4
|
|
4
|
-
|
5
|
+
About
|
5
6
|
----
|
6
7
|
|
7
|
-
iOS
|
8
|
-
|
9
|
-
|
8
|
+
This is a tool of monkey test(random operation test) for iOS applications.
|
9
|
+
Please watch the [demo movie](http://youtu.be/y5PZGVbLHtI).
|
10
|
+
CrashMonkey uses UIAutomation and modified [ui-auto-monkey](https://github.com/jonathanpenn/ui-auto-monkey) for iPhone Simulator manipulation.
|
10
11
|
|
11
12
|
|
12
|
-
|
13
|
+
Environment
|
13
14
|
-------
|
14
15
|
|
15
|
-
|
16
|
+
It is confirmed only in the following environment.
|
16
17
|
|
17
18
|
* Max OS X 10.8.4
|
18
19
|
* Xcode 4.6.3(Build version 4H1503)
|
19
20
|
* Ruby 1.8.7-p371
|
20
21
|
|
21
|
-
Ruby
|
22
|
+
Ruby versions may be OK 1.9.x and 2.0.x.
|
23
|
+
|
24
|
+
Features
|
25
|
+
---------
|
26
|
+
|
27
|
+
### Good Points
|
28
|
+
|
29
|
+
* No need to modify the app's project.
|
30
|
+
* It can specify the running period and times.
|
31
|
+
* The results of Screenshots and Operations history can be shown as HTML.
|
32
|
+
* the console log and crash report can be shown.
|
33
|
+
* It is easy to be used from CI tools like Jenkins.
|
34
|
+
|
35
|
+
### Restrictions
|
36
|
+
|
37
|
+
* It can be run only in iPhone Simulator.
|
38
|
+
* The test can not continue when another application(like Safari) is the most front. (detect and finish the test).
|
39
|
+
* It can not input suitable characters like ID/Pass.
|
22
40
|
|
23
41
|
|
24
42
|
Install
|
@@ -28,16 +46,19 @@ Install
|
|
28
46
|
gem install crash_monkey --no-ri --no-rdoc
|
29
47
|
```
|
30
48
|
|
31
|
-
|
49
|
+
How to use
|
32
50
|
------
|
33
51
|
|
52
|
+
### Simple Usage
|
53
|
+
|
34
54
|
```
|
35
55
|
crash_monkey -a <APP_NAME or APP_PATH>
|
36
56
|
```
|
37
57
|
|
38
|
-
`-a
|
58
|
+
`-a` specify AppName or PATH.
|
59
|
+
|
39
60
|
|
40
|
-
####
|
61
|
+
#### Example
|
41
62
|
|
42
63
|
```
|
43
64
|
crash_monkey -a MyAwesomeApp.app # (1)
|
@@ -45,11 +66,10 @@ crash_monkey -a build/Debug-iphonesimulator/MyAwesomeApp.app # (2)
|
|
45
66
|
crash_monkey -a ~/Library/Developer/Xcode/DerivedData/MyAwesomeApp-ffumcy/Build/Products/Debug-iphonesimulator/MyAwesomeApp.app # (3)
|
46
67
|
```
|
47
68
|
|
48
|
-
* (1)
|
49
|
-
* (2)(3) の指定方法では、PATHにあるアプリを実行します。ただし、iPhone Simulator用にビルドされたものじゃないと使えないので注意して下さい。
|
50
|
-
* Dir名に **iphonesimulator** と入っているものが大抵そうです
|
51
|
-
|
69
|
+
* in (1) case, an application is executed which matches the app's name installed in iPhone Simulator. If there are same name apps, the app of latest updated time is used.
|
52
70
|
|
71
|
+
* in (2)(3) cases, an app which in the PATH is excuted. It is required that the app is built for iPhone Simlator.
|
72
|
+
|
53
73
|
|
54
74
|
|
55
75
|
### Options
|
@@ -62,29 +82,91 @@ Usage: crash_monkey [options]
|
|
62
82
|
-d result_dir Where to output result(default: ./crash_monkey_result)
|
63
83
|
-t time_limit_sec Time limit of running(default: 100 sec)
|
64
84
|
-c config_path Configuration JSON Path
|
85
|
+
-e extend_javascript_path Extend Uiautomation Javascript for such Login scripts
|
65
86
|
--show-config Show Current Configuration JSON
|
66
87
|
--list-app Show List of Installed Apps in iOS Simulator
|
88
|
+
--reset-iPhone-Simulator Reset iPhone Simulator
|
67
89
|
```
|
68
90
|
|
69
91
|
|
70
92
|
#### -n
|
71
|
-
|
93
|
+
The times for monkey test excution.
|
72
94
|
|
73
95
|
#### -d
|
74
|
-
|
96
|
+
The directory for output results.
|
75
97
|
|
76
98
|
#### -t
|
77
|
-
|
99
|
+
Timeout seconds for one monkey test.
|
78
100
|
|
79
101
|
#### -c
|
80
|
-
|
102
|
+
Specify configuration file(JSON format) for UIAutomation library.
|
103
|
+
The template is shown by `--show-config` option.
|
104
|
+
|
105
|
+
#### -e
|
106
|
+
Specify extend Javascript file for UIAutomation library.
|
107
|
+
It could be used for login.([example](https://gist.github.com/jollychang/8972186))
|
81
108
|
|
82
109
|
#### --show-config
|
83
|
-
UIAutomation
|
110
|
+
Output configuration for UIAutomation library by JSON format.
|
84
111
|
|
85
112
|
#### --list-app
|
113
|
+
List apps for iPhone Simulator.
|
114
|
+
|
115
|
+
#### --reset-iPhone-Simulator.
|
116
|
+
Reset iPhone Simulator.
|
117
|
+
|
118
|
+
|
119
|
+
For Jenkins
|
120
|
+
--------------
|
121
|
+
|
122
|
+
CrashMonkey has CUI interface, so easy to use from Jenkins.
|
123
|
+
There are a few notes.
|
124
|
+
|
125
|
+
### Confirmation dialog from UIAutomation is displayed and stop tests.
|
126
|
+
|
127
|
+
The first time in the Mac CrashMonkey run, Instruments(UIAutomation) may display a confirmation dialog and require to input password.
|
128
|
+
|
129
|
+
In this case, the test can not run if the password is not entered. The following management may be valid.
|
130
|
+
|
131
|
+
|
132
|
+
* The Jenkins running User has Administration privilege.
|
133
|
+
* In case Jenkins is running as slave, launch with X like following.
|
134
|
+
|
135
|
+
```
|
136
|
+
javaws http://<SERVER>/computer/<NodeName>/slave-agent.jnlp
|
137
|
+
```
|
138
|
+
|
139
|
+
* The first time a Jenkins Job runs in the Mac, if the dialog is displyed then input correct password.
|
140
|
+
|
141
|
+
Other conditions may be OK, but this is also work.
|
142
|
+
|
143
|
+
|
144
|
+
Troubleshooting
|
145
|
+
-------------------
|
146
|
+
|
147
|
+
### CASE: xcode-select is not set.
|
148
|
+
|
149
|
+
|
150
|
+
#### symptoms
|
151
|
+
|
152
|
+
```
|
153
|
+
% crash_monkey -a MyGoodApp.app
|
154
|
+
.....
|
155
|
+
Run: ["instruments", "-l", "100000", "-t", ........... ]
|
156
|
+
xcode-select: Error: No Xcode folder is set. Run xcode-select -switch <xcode_folder_path> to set the path to the Xcode folder.
|
157
|
+
.....
|
158
|
+
```
|
159
|
+
|
160
|
+
#### measures
|
161
|
+
|
162
|
+
Please specify the install path of Xcode by **xcode-select**.
|
163
|
+
|
164
|
+
ex)
|
165
|
+
|
166
|
+
```
|
167
|
+
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
|
168
|
+
```
|
86
169
|
|
87
|
-
iPhone Simulatorにインストールされているアプリの名前の一覧を表示します。
|
88
170
|
|
89
171
|
|
90
172
|
Contributing to CrashMonkey
|
data/Rakefile
CHANGED
@@ -31,9 +31,17 @@ RSpec::Core::RakeTask.new(:spec) do |spec|
|
|
31
31
|
spec.pattern = FileList['spec/**/*_spec.rb']
|
32
32
|
end
|
33
33
|
|
34
|
-
|
35
|
-
|
36
|
-
|
34
|
+
if RUBY_VERSION =~ /^1\.9/
|
35
|
+
desc "Code coverage detail"
|
36
|
+
task :simplecov do
|
37
|
+
ENV['COVERAGE'] = "true"
|
38
|
+
Rake::Task['spec'].execute
|
39
|
+
end
|
40
|
+
else
|
41
|
+
RSpec::Core::RakeTask.new(:rcov) do |spec|
|
42
|
+
spec.pattern = 'spec/**/*_spec.rb'
|
43
|
+
spec.rcov = true
|
44
|
+
end
|
37
45
|
end
|
38
46
|
|
39
47
|
task :default => :spec
|
data/bin/crash_monkey
CHANGED
@@ -14,8 +14,10 @@ ARGV.options do |o|
|
|
14
14
|
o.on('-d result_dir', 'Where to output result(default: ./crash_monkey_result)') {|b| opts[:result_base_dir] = File.expand_path(b)}
|
15
15
|
o.on('-t time_limit_sec', 'Time limit of running(default: 100 sec)') {|b| opts[:time_limit_sec] = b.to_i}
|
16
16
|
o.on('-c config_path', 'Configuration JSON Path') {|b| opts[:config_path] = File.expand_path(b)}
|
17
|
+
o.on('-e extend_javascript_path', 'Extend Uiautomation Javascript for such Login scripts') {|b| opts[:extend_javascript_path] = File.expand_path(b)}
|
17
18
|
o.on('--show-config', 'Show Current Configuration JSON') {|_| opts[:show_config] = true}
|
18
19
|
o.on('--list-app', 'Show List of Installed Apps in iOS Simulator') {|_| opts[:list_app] = true}
|
20
|
+
o.on('--reset-iPhone-Simulator', 'Reset iPhone Simulator')
|
19
21
|
o.parse!
|
20
22
|
end
|
21
23
|
|
data/crash_monkey.gemspec
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{crash_monkey}
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.2.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Ken Morishita"]
|
@@ -76,7 +76,11 @@ Gem::Specification.new do |s|
|
|
76
76
|
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
77
77
|
s.add_dependency(%q<bundler>, ["> 1.0.0"])
|
78
78
|
s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
|
79
|
-
|
79
|
+
if RUBY_VERSION =~ /^1\.9/ then
|
80
|
+
s.add_dependency(%q<simplecov>, [">= 0"])
|
81
|
+
else
|
82
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
83
|
+
end
|
80
84
|
end
|
81
85
|
else
|
82
86
|
s.add_dependency(%q<erubis>, [">= 2.7.0"])
|
@@ -23,6 +23,8 @@ module UIAutoMonkey
|
|
23
23
|
elsif @options[:list_app]
|
24
24
|
list_app
|
25
25
|
return true
|
26
|
+
elsif @options[:reset_iphone_simulator]
|
27
|
+
reset_iphone_simulator
|
26
28
|
end
|
27
29
|
###########
|
28
30
|
log @options.inspect
|
@@ -118,6 +120,13 @@ module UIAutoMonkey
|
|
118
120
|
puts File.read(config_json_path)
|
119
121
|
end
|
120
122
|
|
123
|
+
def show_extend_javascript
|
124
|
+
if @options[:extend_javascript_path]
|
125
|
+
filename = @options[:extend_javascript_path]
|
126
|
+
return File.exist?(filename), filename
|
127
|
+
end
|
128
|
+
end
|
129
|
+
|
121
130
|
def list_app
|
122
131
|
puts find_apps('*.app').map{|n| File.basename n}.uniq.sort.join("\n")
|
123
132
|
end
|
@@ -126,6 +135,10 @@ module UIAutoMonkey
|
|
126
135
|
puts msg
|
127
136
|
end
|
128
137
|
|
138
|
+
def reset_iphone_simulator
|
139
|
+
`rm -rf ~/Library/Application\ Support/iPhone\ Simulator/`
|
140
|
+
end
|
141
|
+
|
129
142
|
def total_test_count
|
130
143
|
(@options[:run_count] || 2)
|
131
144
|
end
|
@@ -206,10 +219,14 @@ module UIAutoMonkey
|
|
206
219
|
end
|
207
220
|
|
208
221
|
def generate_ui_auto_monkey
|
222
|
+
extend_javascript_flag, extend_javascript_path = show_extend_javascript
|
209
223
|
orig = File.read(ui_auto_monkey_original_path)
|
210
224
|
config = JSON.parse(File.read(config_json_path))
|
211
225
|
replace_str = " config: #{JSON.pretty_generate(config, :indent => ' '*6)}, \n"
|
212
226
|
js = replace_text(orig, replace_str, '__UIAutoMonkey Configuration Begin__', '__UIAutoMonkey Configuration End__')
|
227
|
+
if extend_javascript_flag
|
228
|
+
js = File.read(extend_javascript_path) + "\n" + js
|
229
|
+
end
|
213
230
|
File.open(ui_auto_monkey_path, 'w') {|f| f.write(js)}
|
214
231
|
end
|
215
232
|
|
metadata
CHANGED
@@ -1,143 +1,123 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: crash_monkey
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 1
|
9
|
-
- 7
|
10
|
-
version: 0.1.7
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.2.0
|
11
5
|
platform: ruby
|
12
|
-
authors:
|
6
|
+
authors:
|
13
7
|
- Ken Morishita
|
14
8
|
autorequire:
|
15
9
|
bindir: bin
|
16
10
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
dependencies:
|
21
|
-
- !ruby/object:Gem::Dependency
|
22
|
-
prerelease: false
|
23
|
-
type: :runtime
|
24
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - ">="
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
hash: 19
|
30
|
-
segments:
|
31
|
-
- 2
|
32
|
-
- 7
|
33
|
-
- 0
|
34
|
-
version: 2.7.0
|
11
|
+
date: 2013-07-11 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
35
14
|
name: erubis
|
36
|
-
|
37
|
-
|
38
|
-
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - '>='
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 2.7.0
|
39
20
|
type: :runtime
|
40
|
-
|
41
|
-
|
42
|
-
requirements:
|
43
|
-
- -
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
|
46
|
-
|
47
|
-
- 1
|
48
|
-
- 7
|
49
|
-
- 0
|
50
|
-
version: 1.7.0
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - '>='
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 2.7.0
|
27
|
+
- !ruby/object:Gem::Dependency
|
51
28
|
name: json
|
52
|
-
|
53
|
-
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 1.7.0
|
34
|
+
type: :runtime
|
54
35
|
prerelease: false
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - '>='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 1.7.0
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rspec
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
59
45
|
- - ~>
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
hash: 47
|
62
|
-
segments:
|
63
|
-
- 2
|
64
|
-
- 8
|
65
|
-
- 0
|
46
|
+
- !ruby/object:Gem::Version
|
66
47
|
version: 2.8.0
|
67
|
-
name: rspec
|
68
|
-
version_requirements: *id003
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
prerelease: false
|
71
48
|
type: :development
|
72
|
-
|
73
|
-
|
74
|
-
requirements:
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
75
52
|
- - ~>
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
|
78
|
-
|
79
|
-
- 3
|
80
|
-
- 12
|
81
|
-
version: "3.12"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 2.8.0
|
55
|
+
- !ruby/object:Gem::Dependency
|
82
56
|
name: rdoc
|
83
|
-
|
84
|
-
|
85
|
-
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '3.12'
|
86
62
|
type: :development
|
87
|
-
requirement: &id005 !ruby/object:Gem::Requirement
|
88
|
-
none: false
|
89
|
-
requirements:
|
90
|
-
- - ">"
|
91
|
-
- !ruby/object:Gem::Version
|
92
|
-
hash: 23
|
93
|
-
segments:
|
94
|
-
- 1
|
95
|
-
- 0
|
96
|
-
- 0
|
97
|
-
version: 1.0.0
|
98
|
-
name: bundler
|
99
|
-
version_requirements: *id005
|
100
|
-
- !ruby/object:Gem::Dependency
|
101
63
|
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ~>
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '3.12'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: bundler
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - '>'
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 1.0.0
|
102
76
|
type: :development
|
103
|
-
|
104
|
-
|
105
|
-
requirements:
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - '>'
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 1.0.0
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: jeweler
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
106
87
|
- - ~>
|
107
|
-
- !ruby/object:Gem::Version
|
108
|
-
hash: 63
|
109
|
-
segments:
|
110
|
-
- 1
|
111
|
-
- 8
|
112
|
-
- 4
|
88
|
+
- !ruby/object:Gem::Version
|
113
89
|
version: 1.8.4
|
114
|
-
name: jeweler
|
115
|
-
version_requirements: *id006
|
116
|
-
- !ruby/object:Gem::Dependency
|
117
|
-
prerelease: false
|
118
90
|
type: :development
|
119
|
-
|
120
|
-
|
121
|
-
requirements:
|
122
|
-
- -
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
|
125
|
-
|
126
|
-
- 0
|
127
|
-
version: "0"
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ~>
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 1.8.4
|
97
|
+
- !ruby/object:Gem::Dependency
|
128
98
|
name: rcov
|
129
|
-
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - '>='
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - '>='
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
130
111
|
description: This is a Monkey Test Tool using UIAutomation.
|
131
112
|
email: mokemokechicken@gmail.com
|
132
|
-
executables:
|
113
|
+
executables:
|
133
114
|
- crash_monkey
|
134
115
|
extensions: []
|
135
|
-
|
136
|
-
extra_rdoc_files:
|
116
|
+
extra_rdoc_files:
|
137
117
|
- LICENSE.txt
|
138
118
|
- README.md
|
139
119
|
- README.rdoc
|
140
|
-
files:
|
120
|
+
files:
|
141
121
|
- .document
|
142
122
|
- .rspec
|
143
123
|
- Gemfile
|
@@ -169,39 +149,28 @@ files:
|
|
169
149
|
- lib/ui-auto-monkey/README.md
|
170
150
|
- lib/ui-auto-monkey/UIAutoMonkey.js
|
171
151
|
- spec/spec_helper.rb
|
172
|
-
has_rdoc: true
|
173
152
|
homepage: https://github.com/mokemokechicken/CrashMonkey
|
174
|
-
licenses:
|
153
|
+
licenses:
|
175
154
|
- MIT
|
155
|
+
metadata: {}
|
176
156
|
post_install_message:
|
177
157
|
rdoc_options: []
|
178
|
-
|
179
|
-
require_paths:
|
158
|
+
require_paths:
|
180
159
|
- lib
|
181
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
none: false
|
192
|
-
requirements:
|
193
|
-
- - ">="
|
194
|
-
- !ruby/object:Gem::Version
|
195
|
-
hash: 3
|
196
|
-
segments:
|
197
|
-
- 0
|
198
|
-
version: "0"
|
160
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
161
|
+
requirements:
|
162
|
+
- - '>='
|
163
|
+
- !ruby/object:Gem::Version
|
164
|
+
version: '0'
|
165
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
166
|
+
requirements:
|
167
|
+
- - '>='
|
168
|
+
- !ruby/object:Gem::Version
|
169
|
+
version: '0'
|
199
170
|
requirements: []
|
200
|
-
|
201
171
|
rubyforge_project:
|
202
|
-
rubygems_version:
|
172
|
+
rubygems_version: 2.0.14
|
203
173
|
signing_key:
|
204
174
|
specification_version: 3
|
205
175
|
summary: Monkey Test For iOS Application
|
206
176
|
test_files: []
|
207
|
-
|