tuneup-plist-to-junit 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +19 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +52 -0
- data/Rakefile +1 -0
- data/bin/tuneup_plist_to_junit_parser +60 -0
- data/lib/TuneUpPlistToJunit/version.rb +3 -0
- data/lib/tuneup_plist_to_junit_utils.rb +156 -0
- data/test/expected_outputs/all.xml +1106 -0
- data/test/expected_outputs/no_tests.xml +2 -0
- data/test/expected_outputs/no_tests_with_crud.xml +2 -0
- data/test/expected_outputs/single_fail_with_children.xml +684 -0
- data/test/expected_outputs/single_passing.xml +4 -0
- data/test/test_plists/all.plist +2142 -0
- data/test/test_plists/no_tests.plist +11 -0
- data/test/test_plists/no_tests_with_crud.plist +21 -0
- data/test/test_plists/single_fail_with_children.plist +1094 -0
- data/test/test_plists/single_passing.plist +51 -0
- data/test/tuneup_plist_to_junit_utils_spec.rb +36 -0
- data/tuneup-plist-to-junit.gemspec +27 -0
- metadata +148 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 3c4362932bc7e756badcfc523c406fd05c47ad0e
|
4
|
+
data.tar.gz: 90355223ca4ee0bb777a67868807be4d456b4535
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 19f10e904c4560ef2588194d6fee58ca9e7134543062d3084503a82907bad4183332a229b4f5c4365e594c0c6d2e89b5bc83e007d161407f280edfeab14d479d
|
7
|
+
data.tar.gz: cdfd99bea3ce7b4f45d21671dd5adcc6932e0313a2de37d62ef4d02c520267664de9d3340ce5a808b342d9fbbfaa44f0471eaf3aa2e1df1999a7a13123d411a5
|
data/.gitignore
ADDED
data/Gemfile
ADDED
data/LICENSE.txt
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2014 Vincent Pizzo
|
2
|
+
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
a copy of this software and associated documentation files (the
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,52 @@
|
|
1
|
+
# TuneUpPlistToJunit
|
2
|
+
|
3
|
+
Utility to simply convert a TuneupJS UIAutomation plist file into a JUnit
|
4
|
+
style xml output to be parsed by a CI server such as Jenkins.
|
5
|
+
|
6
|
+
## Installation
|
7
|
+
|
8
|
+
Add this line to your application's Gemfile:
|
9
|
+
|
10
|
+
gem 'tuneup-plist-to-junit'
|
11
|
+
|
12
|
+
And then execute:
|
13
|
+
|
14
|
+
$ bundle
|
15
|
+
|
16
|
+
Or install it yourself as:
|
17
|
+
|
18
|
+
$ gem install tuneup-plist-to-junit
|
19
|
+
|
20
|
+
## Testing
|
21
|
+
|
22
|
+
simply run:
|
23
|
+
|
24
|
+
$ rspec test/tuneup_plist_to_junit_utils_spec.rb
|
25
|
+
|
26
|
+
## Usage
|
27
|
+
|
28
|
+
To use, simply use
|
29
|
+
|
30
|
+
$ tuneup_plist_to_junit_parser
|
31
|
+
|
32
|
+
Usage: TuneUpPlistToJunit.rb [options]
|
33
|
+
|
34
|
+
Specific options:
|
35
|
+
-i, --input FILE UIAutomation plist generated with TuneupJS. Default: Automation Results.plist
|
36
|
+
-o, --output FILE Output location of JUnit test report. Default: test_report.xml
|
37
|
+
|
38
|
+
Common options:
|
39
|
+
-h, --help Show this message
|
40
|
+
-v, --version Show version
|
41
|
+
|
42
|
+
|
43
|
+
## Contributing
|
44
|
+
|
45
|
+
Contributions are welcome and greatly encouraged as I don't have a whole lot of time
|
46
|
+
to dedicate to maintaining this project.
|
47
|
+
|
48
|
+
1. Fork it
|
49
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
50
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
51
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
52
|
+
5. Create new Pull Request
|
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require 'bundler/gem_tasks'
|
@@ -0,0 +1,60 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'optparse'
|
4
|
+
require_relative '../lib/tuneup_plist_to_junit_utils'
|
5
|
+
|
6
|
+
# Parses our command line arguments as well as provide help, versioning, and default
|
7
|
+
# command line arguments
|
8
|
+
#
|
9
|
+
# @param [Array] args the command line arguments
|
10
|
+
# @return [OpenStruct] the processed options
|
11
|
+
def parse_command_line_args(args)
|
12
|
+
options = OpenStruct.new
|
13
|
+
|
14
|
+
# Set our default input/output arguments
|
15
|
+
options.input = 'Automation Results.plist'
|
16
|
+
options.output = 'test_report.xml'
|
17
|
+
|
18
|
+
# Build our options parser
|
19
|
+
opt_parser = OptionParser.new do |opts|
|
20
|
+
opts.banner = 'Usage: TuneUpPlistToJunit.rb [options]'
|
21
|
+
|
22
|
+
opts.separator ''
|
23
|
+
opts.separator 'Specific options:'
|
24
|
+
|
25
|
+
# Mandatory arguments
|
26
|
+
opts.on('-i', '--input FILE', 'UIAutomation plist generated with TuneupJS. Default: Automation Results.plist') do |input|
|
27
|
+
options.input = input
|
28
|
+
end
|
29
|
+
|
30
|
+
opts.on('-o', '--output FILE', 'Output location of JUnit test report. Default: test_report.xml') do |output|
|
31
|
+
options.output = output
|
32
|
+
end
|
33
|
+
|
34
|
+
opts.separator ''
|
35
|
+
opts.separator 'Common options:'
|
36
|
+
|
37
|
+
# Optional arguments
|
38
|
+
opts.on_tail('-h', '--help', 'Show this message') do
|
39
|
+
puts opts
|
40
|
+
exit
|
41
|
+
end
|
42
|
+
|
43
|
+
opts.on_tail('-v', '--version', 'Show version') do
|
44
|
+
puts TuneUpPlistToJunit::VERSION
|
45
|
+
exit
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
# Parse our options and return the process options
|
50
|
+
opt_parser.parse!(args)
|
51
|
+
options
|
52
|
+
end
|
53
|
+
|
54
|
+
# Process the command line arguments
|
55
|
+
options = parse_command_line_args(ARGV)
|
56
|
+
|
57
|
+
# Convert the plist file to junit xml and write it to our destination
|
58
|
+
junit_report = TuneUpPlistToJunitUtils.new.generate_reports(options.input)
|
59
|
+
File.open(options.output, 'w') { |f| f.write(junit_report) }
|
60
|
+
|
@@ -0,0 +1,156 @@
|
|
1
|
+
require 'TuneUpPlistToJunit/version'
|
2
|
+
require 'plist'
|
3
|
+
require 'nokogiri'
|
4
|
+
require 'JSON'
|
5
|
+
|
6
|
+
class TuneUpPlistToJunitUtils
|
7
|
+
#Constants that refer to the <Type> plist tag
|
8
|
+
LOG_DEBUG = 0
|
9
|
+
LOG_ERROR = 3
|
10
|
+
START_TEST = 4
|
11
|
+
END_SUCCESS = 5
|
12
|
+
END_FAILURE = 7
|
13
|
+
SCREENSHOT = 8
|
14
|
+
|
15
|
+
private_constant :LOG_DEBUG
|
16
|
+
private_constant :LOG_ERROR
|
17
|
+
private_constant :START_TEST
|
18
|
+
private_constant :END_SUCCESS
|
19
|
+
private_constant :END_FAILURE
|
20
|
+
private_constant :SCREENSHOT
|
21
|
+
|
22
|
+
private
|
23
|
+
|
24
|
+
# Parses the plist file and returns just the test results array (log messages)
|
25
|
+
#
|
26
|
+
# @param [String] plist_file_or_xml file name or xml of the UIAutomation plist file
|
27
|
+
# @return [Array] the unprocessed plist test results array, aka log messages
|
28
|
+
def parse_plist(plist_file_or_xml)
|
29
|
+
plist_hash = Plist::parse_xml(plist_file_or_xml)
|
30
|
+
|
31
|
+
# We want the 'All Samples' plist key which contains our test results
|
32
|
+
plist_hash['All Samples']
|
33
|
+
end
|
34
|
+
|
35
|
+
# Converts the log messages from the plist into an intermediate test array so that
|
36
|
+
# it can be processed with the (see #generate_junit_report) method. The test hash should
|
37
|
+
# be similar to:
|
38
|
+
# {:name => 'test name',
|
39
|
+
# :log_type => 'Pass|Fail|etc',
|
40
|
+
# :log_message_type => 4|5|7,
|
41
|
+
# :timestamp => '2014',
|
42
|
+
# :messages => [ {:message => 'debug message',
|
43
|
+
# :log_type => 0|3|8,
|
44
|
+
# :log_message_type => 'ERROR|SCREENSHOT|DEBUG|ETC',
|
45
|
+
# :timestamp => '2014'} ]}
|
46
|
+
#
|
47
|
+
# @param [Array] log_messages the unprocessed log messages from the plist
|
48
|
+
# @return [Array] the list of tests in an understandable format
|
49
|
+
def convert_log_messages_to_tests(log_messages)
|
50
|
+
# The tests array to return
|
51
|
+
tests = []
|
52
|
+
|
53
|
+
# The current test we are processing
|
54
|
+
current_test = nil
|
55
|
+
|
56
|
+
log_messages.each do |log_message|
|
57
|
+
# Pull our relevant fields from the log message in from the plist
|
58
|
+
message = log_message['Message']
|
59
|
+
log_type = log_message['LogType']
|
60
|
+
timestamp = log_message['Timestamp']
|
61
|
+
screenshot = log_message['Screenshot']
|
62
|
+
log_message_type = log_message['Type']
|
63
|
+
children = log_message['children']
|
64
|
+
|
65
|
+
# If our log message type is the START type, initialize a new current test for us to use
|
66
|
+
if !current_test && log_message_type == START_TEST
|
67
|
+
current_test = {:name => message,
|
68
|
+
:log_type => log_type,
|
69
|
+
:log_message_type => log_message_type,
|
70
|
+
:timestamp => timestamp,
|
71
|
+
:messages => []}
|
72
|
+
|
73
|
+
# In order to add a message to our current test, the message type can't be a begin or end node
|
74
|
+
elsif current_test && log_message_type != END_FAILURE && log_message_type != END_SUCCESS && log_message_type != START_TEST
|
75
|
+
message = log_message_type == SCREENSHOT ? screenshot : message
|
76
|
+
message = "#{message} \nView Dump: \n#{JSON.pretty_generate(children)}\n" if children
|
77
|
+
current_test[:messages] << {:message => message,
|
78
|
+
:log_type => log_type,
|
79
|
+
:log_message_type => log_message_type,
|
80
|
+
:timestamp => timestamp}
|
81
|
+
|
82
|
+
# If the current test is present and the message type is an end node, then add the current test to our tests and
|
83
|
+
# reset the current test
|
84
|
+
elsif current_test && (log_message_type == END_FAILURE || log_message_type == END_SUCCESS)
|
85
|
+
current_test[:end_message_type] = log_message_type
|
86
|
+
current_test[:elapsed_time] = timestamp.to_time - current_test[:timestamp].to_time
|
87
|
+
tests << current_test
|
88
|
+
current_test = nil
|
89
|
+
end
|
90
|
+
end
|
91
|
+
|
92
|
+
tests
|
93
|
+
end
|
94
|
+
|
95
|
+
# After the tests have been processed into an intermediate state from (@see #convert_log_messages_to_tests),
|
96
|
+
# the tests can then me transformed into a junit style xml output
|
97
|
+
#
|
98
|
+
# @param tests [Array] array of processed plist tests as generated from (@see #convert_log_messages_to_tests)
|
99
|
+
# @return [String] a junit xml string
|
100
|
+
def generate_junit_report(tests)
|
101
|
+
# Gather our root <testsuite/> tag information
|
102
|
+
total_tests = tests.size
|
103
|
+
total_errors = tests.reduce(0) { |sum, t| sum + t[:messages].count { |m| m[:log_message_type] == LOG_ERROR } }
|
104
|
+
total_failures = tests.count { |t| t[:end_message_type] == END_FAILURE }
|
105
|
+
starting_time = tests.empty? ? '' : tests[0][:timestamp]
|
106
|
+
total_time = tests.reduce(0) { |sum, t| sum + t[:elapsed_time] }
|
107
|
+
|
108
|
+
# Begin building our junit xml using Nokogiri
|
109
|
+
builder = Nokogiri::XML::Builder.new do |xml|
|
110
|
+
# Our root xml tag should be a <testsuite/> tag with the number of tests, duration, failures, etc
|
111
|
+
xml.testsuite(:tests => total_tests, :errors => total_errors, :failures => total_failures, :timestamp => starting_time, :time => total_time) {
|
112
|
+
# For each of our tests we want to create a <testcase/> tag
|
113
|
+
tests.each do |test|
|
114
|
+
xml.testcase(:name => test[:name], :time => test[:elapsed_time]) {
|
115
|
+
|
116
|
+
# If the test case ended in a failure, we want to add a <failure/> tag
|
117
|
+
if test[:end_message_type] == END_FAILURE
|
118
|
+
xml.failure(:message => test[:name], :type => test[:log_type])
|
119
|
+
end
|
120
|
+
|
121
|
+
# Add the messages from the test to the test case tag
|
122
|
+
test[:messages].each do |message|
|
123
|
+
case message[:log_message_type]
|
124
|
+
|
125
|
+
# For debug and screenshot, we'll convert the messages to a <system-out/> tag
|
126
|
+
when LOG_DEBUG, SCREENSHOT
|
127
|
+
xml.send(:"system-out") {
|
128
|
+
xml.text message[:message]
|
129
|
+
}
|
130
|
+
|
131
|
+
# This is likely the LOG_ERROR case which we'll record it as an <error/> tag
|
132
|
+
else
|
133
|
+
xml.error(:message => message[:message], :type => message[:log_type])
|
134
|
+
end
|
135
|
+
end
|
136
|
+
}
|
137
|
+
end
|
138
|
+
}
|
139
|
+
end
|
140
|
+
|
141
|
+
builder.to_xml
|
142
|
+
end
|
143
|
+
|
144
|
+
public
|
145
|
+
|
146
|
+
# Process the plist file and generates a JUnit style xml string
|
147
|
+
#
|
148
|
+
# @param [String] plist_file_or_xml file name or xml of the UIAutomation plist file
|
149
|
+
# @return [String] the JUnit style xml
|
150
|
+
def generate_reports(plist_file_or_xml)
|
151
|
+
log_messages = parse_plist(plist_file_or_xml)
|
152
|
+
tests = convert_log_messages_to_tests(log_messages)
|
153
|
+
generate_junit_report(tests)
|
154
|
+
end
|
155
|
+
|
156
|
+
end
|
@@ -0,0 +1,1106 @@
|
|
1
|
+
<?xml version="1.0"?>
|
2
|
+
<testsuite tests="12" errors="3" failures="3" timestamp="2014-03-04T20:36:27+00:00" time="166.0">
|
3
|
+
<testcase name="Holding login button shows the edit url popup" time="14.0">
|
4
|
+
<system-out>target.frontMostApp().mainWindow().buttons()["Login Button"].touchAndHold("5.5")</system-out>
|
5
|
+
<system-out>target.frontMostApp().mainWindow().textViews()[0].touchAndHold("1.1")</system-out>
|
6
|
+
<system-out>target.frontMostApp().editingMenu().elements()["Select All"].tap()</system-out>
|
7
|
+
<system-out>target.frontMostApp().keyboard().typeString("http://vince.poweredbypeanuts.com:3000/api")</system-out>
|
8
|
+
<system-out>target.frontMostApp().mainWindow().buttons()[1].tap()</system-out>
|
9
|
+
</testcase>
|
10
|
+
<testcase name="Login button takes us to the login webview" time="2.0">
|
11
|
+
<system-out>target.frontMostApp().mainWindow().buttons()["Login Button"].tap()</system-out>
|
12
|
+
</testcase>
|
13
|
+
<testcase name="Searching for provider yeilds only one result" time="3.0">
|
14
|
+
<system-out>target.frontMostApp().mainWindow().scrollViews()[0].webViews()[0].textFields()[0].tap()</system-out>
|
15
|
+
<system-out>target.frontMostApp().keyboard().typeString("DemoDummy")</system-out>
|
16
|
+
</testcase>
|
17
|
+
<testcase name="Tapping the provider link brings us to the demo login page" time="3.0">
|
18
|
+
<system-out>target.frontMostApp().mainWindow().scrollViews()[0].webViews()[0].links()["DemoDummy"].tap()</system-out>
|
19
|
+
</testcase>
|
20
|
+
<testcase name="Logging in with our dummy user shows the login screen, then inbox" time="8.0">
|
21
|
+
<system-out>target.frontMostApp().mainWindow().scrollViews()[0].webViews()[0].textFields()[0].tap()</system-out>
|
22
|
+
<system-out>target.frontMostApp().keyboard().typeString("automated@singlewire.com")</system-out>
|
23
|
+
<system-out>target.frontMostApp().mainWindow().scrollViews()[0].webViews()[0].buttons()["Login"].tap()</system-out>
|
24
|
+
</testcase>
|
25
|
+
<testcase name="Inbox contains no initial rows" time="8.0"/>
|
26
|
+
<testcase name="Clicking on the compose icon starts the loading process. Initial templates show." time="1.0">
|
27
|
+
<system-out>target.frontMostApp().navigationBar().rightButton().tap()</system-out>
|
28
|
+
</testcase>
|
29
|
+
<testcase name="Clicking on the first template shows the compose screen." time="3.0">
|
30
|
+
<failure message="Clicking on the first template shows the compose screen." type="Fail"/>
|
31
|
+
<system-out>target.frontMostApp().mainWindow().tableViews()["Message Templates Table"].cells()[0].tap()</system-out>
|
32
|
+
<error message="AssertionException: "Expected <The following is a test of the Edmonds Community College Mass Notification System. The following is a test of the Edmonds Community College Mass Notification System. If this was an actual emergency, you would receive essential news and information.> but received <An intruder has been spotted on campus>"" type="Error"/>
|
33
|
+
<system-out>UIATarget: name:iPhone Simulator rect:{{0, 0}, {320, 568}}
|
34
|
+
View Dump:
|
35
|
+
[
|
36
|
+
{
|
37
|
+
"LogType": "Debug",
|
38
|
+
"Message": "UIAApplication: name:InformaCast rect:{{0, 20}, {320, 548}}",
|
39
|
+
"Screenshot": "A803396E-5DA2-4802-B2D8-2BB4ACC3B225",
|
40
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
41
|
+
"Type": 0,
|
42
|
+
"children": [
|
43
|
+
{
|
44
|
+
"LogType": "Debug",
|
45
|
+
"Message": "UIAWindow: rect:{{0, 0}, {320, 568}}",
|
46
|
+
"Screenshot": "88296D7F-533F-4E2B-BD09-AC0958CC9FD7",
|
47
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
48
|
+
"Type": 0,
|
49
|
+
"children": [
|
50
|
+
{
|
51
|
+
"LogType": "Debug",
|
52
|
+
"Message": "UIANavigationBar: name:Compose rect:{{0, 20}, {320, 44}}",
|
53
|
+
"Screenshot": "159EED56-52FB-43A4-866A-2D18781FBD8C",
|
54
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
55
|
+
"Type": 0,
|
56
|
+
"children": [
|
57
|
+
{
|
58
|
+
"LogType": "Debug",
|
59
|
+
"Message": "UIAImage: rect:{{0, 0}, {320, 64}}",
|
60
|
+
"Screenshot": "1C209DDD-A19A-46FF-9BC1-B8107AD0D212",
|
61
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
62
|
+
"Type": 0,
|
63
|
+
"children": [
|
64
|
+
{
|
65
|
+
"LogType": "Debug",
|
66
|
+
"Message": "UIAImage: rect:{{0, 64}, {320, 0}}",
|
67
|
+
"Screenshot": "2FAD6EC1-0CCB-400B-8BC3-BE854DEA4726",
|
68
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
69
|
+
"Type": 0,
|
70
|
+
"children": [
|
71
|
+
|
72
|
+
]
|
73
|
+
}
|
74
|
+
]
|
75
|
+
},
|
76
|
+
{
|
77
|
+
"LogType": "Debug",
|
78
|
+
"Message": "UIAStaticText: name:Compose value:Compose rect:{{121, 28}, {78, 27}}",
|
79
|
+
"Screenshot": "2BFB07C2-8B86-4D39-8126-EF3FA794CC05",
|
80
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
81
|
+
"Type": 0,
|
82
|
+
"children": [
|
83
|
+
|
84
|
+
]
|
85
|
+
},
|
86
|
+
{
|
87
|
+
"LogType": "Debug",
|
88
|
+
"Message": "UIAButton: name:Notifications rect:{{-54, 28}, {54, 30}}",
|
89
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
90
|
+
"Type": 0,
|
91
|
+
"children": [
|
92
|
+
{
|
93
|
+
"LogType": "Debug",
|
94
|
+
"Message": "UIAStaticText: name:Notifications value:Notifications rect:{{-35, 30}, {35, 22}}",
|
95
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
96
|
+
"Type": 0,
|
97
|
+
"children": [
|
98
|
+
|
99
|
+
]
|
100
|
+
}
|
101
|
+
]
|
102
|
+
},
|
103
|
+
{
|
104
|
+
"LogType": "Debug",
|
105
|
+
"Message": "UIAButton: name:Back rect:{{8, 26}, {55, 30}}",
|
106
|
+
"Screenshot": "F1C9E660-3182-4AB0-9DE6-A7E44D288F62",
|
107
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
108
|
+
"Type": 0,
|
109
|
+
"children": [
|
110
|
+
|
111
|
+
]
|
112
|
+
},
|
113
|
+
{
|
114
|
+
"LogType": "Debug",
|
115
|
+
"Message": "UIAButton: name:Cancel rect:{{8, 28}, {50, 30}}",
|
116
|
+
"Screenshot": "12A898CF-48AE-4A92-9D38-2DFB75F4498E",
|
117
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
118
|
+
"Type": 0,
|
119
|
+
"children": [
|
120
|
+
{
|
121
|
+
"LogType": "Debug",
|
122
|
+
"Message": "UIAStaticText: name:Cancel value:Cancel rect:{{8, 32}, {50, 21}}",
|
123
|
+
"Screenshot": "566F8694-6C1B-42C7-9791-F043913D6428",
|
124
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
125
|
+
"Type": 0,
|
126
|
+
"children": [
|
127
|
+
|
128
|
+
]
|
129
|
+
}
|
130
|
+
]
|
131
|
+
},
|
132
|
+
{
|
133
|
+
"LogType": "Debug",
|
134
|
+
"Message": "UIAButton: name:UINavigationBarBackIndicatorDefault.png rect:{{8, 32}, {12, 20}}",
|
135
|
+
"Screenshot": "F9430908-BFBF-4EC4-92F8-6B148DA9D279",
|
136
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
137
|
+
"Type": 0,
|
138
|
+
"children": [
|
139
|
+
|
140
|
+
]
|
141
|
+
},
|
142
|
+
{
|
143
|
+
"LogType": "Debug",
|
144
|
+
"Message": "UIAStaticText: name:Select Template value:Select Template rect:{{27, 28}, {126, 27}}",
|
145
|
+
"Screenshot": "BB7E8447-17CC-4A04-9635-E31F893B4E00",
|
146
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
147
|
+
"Type": 0,
|
148
|
+
"children": [
|
149
|
+
{
|
150
|
+
"LogType": "Debug",
|
151
|
+
"Message": "UIAStaticText: name:Select Template value:Select Template rect:{{27, 28}, {126, 24}}",
|
152
|
+
"Screenshot": "B62BD658-942D-4E94-B94A-54D53876488A",
|
153
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
154
|
+
"Type": 0,
|
155
|
+
"children": [
|
156
|
+
|
157
|
+
]
|
158
|
+
}
|
159
|
+
]
|
160
|
+
},
|
161
|
+
{
|
162
|
+
"LogType": "Debug",
|
163
|
+
"Message": "UIAButton: name:Send rect:{{274, 28}, {38, 30}}",
|
164
|
+
"Screenshot": "EE982447-A912-426B-8867-905096F88EEE",
|
165
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
166
|
+
"Type": 0,
|
167
|
+
"children": [
|
168
|
+
|
169
|
+
]
|
170
|
+
}
|
171
|
+
]
|
172
|
+
},
|
173
|
+
{
|
174
|
+
"LogType": "Debug",
|
175
|
+
"Message": "UIATableView: name:Message Templates Table value:rows 1 to 4 of 4 rect:{{-96, 64}, {320, 504}}",
|
176
|
+
"Screenshot": "B5753812-ADC1-4DDF-848A-042CC0F2EE9E",
|
177
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
178
|
+
"Type": 0,
|
179
|
+
"children": [
|
180
|
+
{
|
181
|
+
"LogType": "Debug",
|
182
|
+
"Message": "UIATableCell: name:Intruder Alert, An intruder has been spotted on campus, Notice. An intruder has been spotted on campus heading towards the recreation center. Please be advised and stay tuned for further updates. value:1 rect:{{-96, 64}, {320, 90}}",
|
183
|
+
"Screenshot": "23CD05E0-870C-42B9-8794-FFF5993AB26F",
|
184
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
185
|
+
"Type": 0,
|
186
|
+
"children": [
|
187
|
+
{
|
188
|
+
"LogType": "Debug",
|
189
|
+
"Message": "UIAStaticText: name:Intruder Alert, An intruder has been spotted on campus, Notice. An intruder has been spotted on campus heading towards the recreation center. Please be advised and stay tuned for further updates. value: rect:{{-96, 64}, {320, 90}}",
|
190
|
+
"Screenshot": "C2F8D9F0-8BFE-487F-8951-7A821B049731",
|
191
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
192
|
+
"Type": 0,
|
193
|
+
"children": [
|
194
|
+
|
195
|
+
]
|
196
|
+
}
|
197
|
+
]
|
198
|
+
},
|
199
|
+
{
|
200
|
+
"LogType": "Debug",
|
201
|
+
"Message": "UIATableCell: name:The following is a test of the Edmonds Community College Mass Notification System. The following is a test of the Edmonds Community College , The following is a test of the Edmonds Community College Mass Notification System. The following is a test of the Edmonds Community College Mass Notification System. If this was an actual emergency, you would receive essential news and information., The following is a test of the Edmonds Community College Mass Notification System. The following is a test of the Edmonds Community College Mass Notification System. If this was an actual emergency, you would receive essential news and information. value: rect:{{-96, 154}, {320, 90}}",
|
202
|
+
"Screenshot": "CFD4108B-3CAD-4221-8233-059B60A62458",
|
203
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
204
|
+
"Type": 0,
|
205
|
+
"children": [
|
206
|
+
{
|
207
|
+
"LogType": "Debug",
|
208
|
+
"Message": "UIAStaticText: name:The following is a test of the Edmonds Community College Mass Notification System. The following is a test of the Edmonds Community College , The following is a test of the Edmonds Community College Mass Notification System. The following is a test of the Edmonds Community College Mass Notification System. If this was an actual emergency, you would receive essential news and information., The following is a test of the Edmonds Community College Mass Notification System. The following is a test of the Edmonds Community College Mass Notification System. If this was an actual emergency, you would receive essential news and information. value: rect:{{-96, 154}, {320, 90}}",
|
209
|
+
"Screenshot": "617F00FC-7E28-4CD3-90CC-ECB9AD7F3551",
|
210
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
211
|
+
"Type": 0,
|
212
|
+
"children": [
|
213
|
+
|
214
|
+
]
|
215
|
+
}
|
216
|
+
]
|
217
|
+
},
|
218
|
+
{
|
219
|
+
"LogType": "Debug",
|
220
|
+
"Message": "UIATableCell: name:What would you like this friday?, What would you like this friday?, Please take a second to confirm what you would like to eat this friday. If you have any allergies, please send your requests to: admin@company.com value: rect:{{-96, 244}, {320, 90}}",
|
221
|
+
"Screenshot": "2DE2BC3B-5538-42F8-B903-B070EFC9FEAD",
|
222
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
223
|
+
"Type": 0,
|
224
|
+
"children": [
|
225
|
+
{
|
226
|
+
"LogType": "Debug",
|
227
|
+
"Message": "UIAStaticText: name:What would you like this friday?, What would you like this friday?, Please take a second to confirm what you would like to eat this friday. If you have any allergies, please send your requests to: admin@company.com value: rect:{{-96, 244}, {320, 90}}",
|
228
|
+
"Screenshot": "E146EE0F-3515-4665-8958-554600F3C731",
|
229
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
230
|
+
"Type": 0,
|
231
|
+
"children": [
|
232
|
+
|
233
|
+
]
|
234
|
+
}
|
235
|
+
]
|
236
|
+
},
|
237
|
+
{
|
238
|
+
"LogType": "Debug",
|
239
|
+
"Message": "UIATableCell: name:Weather Alert, Hail warning until 8PM, THE NATIONAL WEATHER SERVICE IN MADISON HAS ISSUED A * HAIL WARNING FOR... EASTERN DANE COUNTY IN WISCONSIN... NORTHEN DANE COUNTY IN WISCONSIN... * UNTIL 8 PM CDT value: rect:{{-96, 334}, {320, 90}}",
|
240
|
+
"Screenshot": "DA4DA586-8B9D-41C2-92EB-FED37037E0F8",
|
241
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
242
|
+
"Type": 0,
|
243
|
+
"children": [
|
244
|
+
{
|
245
|
+
"LogType": "Debug",
|
246
|
+
"Message": "UIAStaticText: name:Weather Alert, Hail warning until 8PM, THE NATIONAL WEATHER SERVICE IN MADISON HAS ISSUED A * HAIL WARNING FOR... EASTERN DANE COUNTY IN WISCONSIN... NORTHEN DANE COUNTY IN WISCONSIN... * UNTIL 8 PM CDT value: rect:{{-96, 334}, {320, 90}}",
|
247
|
+
"Screenshot": "4D6DD5DC-6D3E-4067-B3E4-3994B4D4800E",
|
248
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
249
|
+
"Type": 0,
|
250
|
+
"children": [
|
251
|
+
|
252
|
+
]
|
253
|
+
}
|
254
|
+
]
|
255
|
+
}
|
256
|
+
]
|
257
|
+
},
|
258
|
+
{
|
259
|
+
"LogType": "Debug",
|
260
|
+
"Message": "UIAImage: name:UINavigationVerticalColumnShadow.png rect:{{-9, 0}, {9, 568}}",
|
261
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
262
|
+
"Type": 0,
|
263
|
+
"children": [
|
264
|
+
|
265
|
+
]
|
266
|
+
},
|
267
|
+
{
|
268
|
+
"LogType": "Debug",
|
269
|
+
"Message": "UIATableView: name:Compose Table View value:rows 1 to 6 of 8 rect:{{0, 0}, {320, 568}}",
|
270
|
+
"Screenshot": "551A88F2-9E00-4ABF-8D03-3F245EEED42D",
|
271
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
272
|
+
"Type": 0,
|
273
|
+
"children": [
|
274
|
+
{
|
275
|
+
"LogType": "Debug",
|
276
|
+
"Message": "UIATableGroup: name:SUBJECT rect:{{0, 64}, {320, 55}}",
|
277
|
+
"Screenshot": "53833C2A-5662-4AAF-9CBD-C69A2AFF8AD9",
|
278
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
279
|
+
"Type": 0,
|
280
|
+
"children": [
|
281
|
+
{
|
282
|
+
"LogType": "Debug",
|
283
|
+
"Message": "UIAElement: name:SUBJECT rect:{{0, 64}, {320, 55}}",
|
284
|
+
"Screenshot": "A53031DC-15A6-4BBB-B56E-ED33953633A3",
|
285
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
286
|
+
"Type": 0,
|
287
|
+
"children": [
|
288
|
+
|
289
|
+
]
|
290
|
+
}
|
291
|
+
]
|
292
|
+
},
|
293
|
+
{
|
294
|
+
"LogType": "Debug",
|
295
|
+
"Message": "UIATableCell: name:Subject Text View value: rect:{{0, 119}, {320, 67}}",
|
296
|
+
"Screenshot": "F420E8F0-50EC-4135-A36A-B1F457A7BF14",
|
297
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
298
|
+
"Type": 0,
|
299
|
+
"children": [
|
300
|
+
{
|
301
|
+
"LogType": "Debug",
|
302
|
+
"Message": "UIATextView: name:Subject Text View value:An intruder has been spotted on campus rect:{{20, 127}, {280, 50}}",
|
303
|
+
"Screenshot": "46C872C0-E3EC-433D-966A-5BB8CA412E0B",
|
304
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
305
|
+
"Type": 0,
|
306
|
+
"children": [
|
307
|
+
|
308
|
+
]
|
309
|
+
}
|
310
|
+
]
|
311
|
+
},
|
312
|
+
{
|
313
|
+
"LogType": "Debug",
|
314
|
+
"Message": "UIATableGroup: name:RECIPIENTS rect:{{0, 196}, {320, 38}}",
|
315
|
+
"Screenshot": "614B4B9E-2891-43C9-8F8A-06B9D3853974",
|
316
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
317
|
+
"Type": 0,
|
318
|
+
"children": [
|
319
|
+
{
|
320
|
+
"LogType": "Debug",
|
321
|
+
"Message": "UIAElement: name:RECIPIENTS rect:{{0, 196}, {320, 38}}",
|
322
|
+
"Screenshot": "AFB432FD-4B15-4038-82AB-BD05BB13215D",
|
323
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
324
|
+
"Type": 0,
|
325
|
+
"children": [
|
326
|
+
|
327
|
+
]
|
328
|
+
}
|
329
|
+
]
|
330
|
+
},
|
331
|
+
{
|
332
|
+
"LogType": "Debug",
|
333
|
+
"Message": "UIATableCell: value: rect:{{0, 234}, {320, 49}}",
|
334
|
+
"Screenshot": "EABDD25D-01EF-4B98-9E78-4C3DC90F9290",
|
335
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
336
|
+
"Type": 0,
|
337
|
+
"children": [
|
338
|
+
{
|
339
|
+
"LogType": "Debug",
|
340
|
+
"Message": "UIAStaticText: name:Security value:Security rect:{{32, 242}, {69, 31}}",
|
341
|
+
"Screenshot": "1DE3B41C-E398-415A-A901-D1D2E54136C8",
|
342
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
343
|
+
"Type": 0,
|
344
|
+
"children": [
|
345
|
+
|
346
|
+
]
|
347
|
+
},
|
348
|
+
{
|
349
|
+
"LogType": "Debug",
|
350
|
+
"Message": "UIAStaticText: name:Students value:Students rect:{{105, 242}, {75, 31}}",
|
351
|
+
"Screenshot": "90120C26-3C89-49F0-8C24-36DD810535B7",
|
352
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
353
|
+
"Type": 0,
|
354
|
+
"children": [
|
355
|
+
|
356
|
+
]
|
357
|
+
},
|
358
|
+
{
|
359
|
+
"LogType": "Debug",
|
360
|
+
"Message": "UIATextField: value: rect:{{182, 242}, {75, 31}}",
|
361
|
+
"Screenshot": "23419D92-AB43-488D-8331-5E90ED5B40BE",
|
362
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
363
|
+
"Type": 0,
|
364
|
+
"children": [
|
365
|
+
{
|
366
|
+
"LogType": "Debug",
|
367
|
+
"Message": "UIATextField: value: rect:{{182, 242}, {75, 31}}",
|
368
|
+
"Screenshot": "8FAEA89D-0A20-4354-BF17-1A0745273C91",
|
369
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
370
|
+
"Type": 0,
|
371
|
+
"children": [
|
372
|
+
|
373
|
+
]
|
374
|
+
}
|
375
|
+
]
|
376
|
+
}
|
377
|
+
]
|
378
|
+
},
|
379
|
+
{
|
380
|
+
"LogType": "Debug",
|
381
|
+
"Message": "UIATableGroup: name:CONFIRMATION rect:{{0, 292}, {320, 38}}",
|
382
|
+
"Screenshot": "11D81913-C852-4D9A-955C-F6FCE48FC928",
|
383
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
384
|
+
"Type": 0,
|
385
|
+
"children": [
|
386
|
+
{
|
387
|
+
"LogType": "Debug",
|
388
|
+
"Message": "UIAElement: name:CONFIRMATION rect:{{0, 292}, {320, 38}}",
|
389
|
+
"Screenshot": "14F4B006-DBDE-4235-A81A-37708658D561",
|
390
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
391
|
+
"Type": 0,
|
392
|
+
"children": [
|
393
|
+
|
394
|
+
]
|
395
|
+
}
|
396
|
+
]
|
397
|
+
},
|
398
|
+
{
|
399
|
+
"LogType": "Debug",
|
400
|
+
"Message": "UIATableCell: name:Have you seen the intruder? value: rect:{{0, 330}, {320, 44}}",
|
401
|
+
"Screenshot": "40013E1C-F992-49C2-A5F9-EE67DBA5285B",
|
402
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
403
|
+
"Type": 0,
|
404
|
+
"children": [
|
405
|
+
{
|
406
|
+
"LogType": "Debug",
|
407
|
+
"Message": "UIAStaticText: name:Have you seen the intruder? value: rect:{{0, 330}, {320, 44}}",
|
408
|
+
"Screenshot": "B9C410A1-61E9-4AF6-AE9B-78DE1B1025EC",
|
409
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
410
|
+
"Type": 0,
|
411
|
+
"children": [
|
412
|
+
|
413
|
+
]
|
414
|
+
}
|
415
|
+
]
|
416
|
+
},
|
417
|
+
{
|
418
|
+
"LogType": "Debug",
|
419
|
+
"Message": "UIATableGroup: name:BODY rect:{{0, 384}, {320, 38}}",
|
420
|
+
"Screenshot": "82669029-860B-4DAF-A086-ED6F68A6ACF7",
|
421
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
422
|
+
"Type": 0,
|
423
|
+
"children": [
|
424
|
+
{
|
425
|
+
"LogType": "Debug",
|
426
|
+
"Message": "UIAElement: name:BODY rect:{{0, 384}, {320, 38}}",
|
427
|
+
"Screenshot": "DE1CFB9C-148D-4B18-B901-7AA7B89C85CA",
|
428
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
429
|
+
"Type": 0,
|
430
|
+
"children": [
|
431
|
+
|
432
|
+
]
|
433
|
+
}
|
434
|
+
]
|
435
|
+
},
|
436
|
+
{
|
437
|
+
"LogType": "Debug",
|
438
|
+
"Message": "UIATableCell: value: rect:{{0, 422}, {320, 109}}",
|
439
|
+
"Screenshot": "7E4B5913-5C2D-4420-8434-AF179EB487F8",
|
440
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
441
|
+
"Type": 0,
|
442
|
+
"children": [
|
443
|
+
{
|
444
|
+
"LogType": "Debug",
|
445
|
+
"Message": "UIATextView: value:Notice. An intruder has been spotted on campus heading towards the recreation center. Please be advised and stay tuned for further updates. rect:{{20, 428}, {280, 96}}",
|
446
|
+
"Screenshot": "0403F8CA-4B18-4A0E-A81D-24C7EEB64848",
|
447
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
448
|
+
"Type": 0,
|
449
|
+
"children": [
|
450
|
+
|
451
|
+
]
|
452
|
+
}
|
453
|
+
]
|
454
|
+
},
|
455
|
+
{
|
456
|
+
"LogType": "Debug",
|
457
|
+
"Message": "UIATableGroup: name:IMAGE rect:{{0, 540}, {320, 38}}",
|
458
|
+
"Screenshot": "88852DD2-C348-4546-8431-C0FF3BB215C6",
|
459
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
460
|
+
"Type": 0,
|
461
|
+
"children": [
|
462
|
+
{
|
463
|
+
"LogType": "Debug",
|
464
|
+
"Message": "UIAElement: name:IMAGE rect:{{0, 540}, {320, 38}}",
|
465
|
+
"Screenshot": "6AD54A57-A03B-4A53-84B7-BA685A8F32C1",
|
466
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
467
|
+
"Type": 0,
|
468
|
+
"children": [
|
469
|
+
|
470
|
+
]
|
471
|
+
}
|
472
|
+
]
|
473
|
+
},
|
474
|
+
{
|
475
|
+
"LogType": "Debug",
|
476
|
+
"Message": "UIATableCell: name:No image available value: rect:{{0, 578}, {320, 180}}",
|
477
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
478
|
+
"Type": 0,
|
479
|
+
"children": [
|
480
|
+
{
|
481
|
+
"LogType": "Debug",
|
482
|
+
"Message": "UIAStaticText: name:No image available value: rect:{{0, 578}, {320, 180}}",
|
483
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
484
|
+
"Type": 0,
|
485
|
+
"children": [
|
486
|
+
|
487
|
+
]
|
488
|
+
}
|
489
|
+
]
|
490
|
+
},
|
491
|
+
{
|
492
|
+
"LogType": "Debug",
|
493
|
+
"Message": "UIATableCell: name:Choose value: rect:{{0, 758}, {320, 43}}",
|
494
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
495
|
+
"Type": 0,
|
496
|
+
"children": [
|
497
|
+
{
|
498
|
+
"LogType": "Debug",
|
499
|
+
"Message": "UIAButton: name:Choose rect:{{0, 0}, {136, 30}}",
|
500
|
+
"Screenshot": "8B1E5657-0DC2-45A8-9630-2A3126F1A07F",
|
501
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
502
|
+
"Type": 0,
|
503
|
+
"children": [
|
504
|
+
|
505
|
+
]
|
506
|
+
},
|
507
|
+
{
|
508
|
+
"LogType": "Debug",
|
509
|
+
"Message": "UIAButton: name:Remove rect:{{0, 0}, {136, 30}}",
|
510
|
+
"Screenshot": "7440BC8A-BE14-4902-AA1C-7272883E156F",
|
511
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
512
|
+
"Type": 0,
|
513
|
+
"children": [
|
514
|
+
|
515
|
+
]
|
516
|
+
}
|
517
|
+
]
|
518
|
+
},
|
519
|
+
{
|
520
|
+
"LogType": "Debug",
|
521
|
+
"Message": "UIATableGroup: name:Audio rect:{{0, 811}, {320, 38}}",
|
522
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
523
|
+
"Type": 0,
|
524
|
+
"children": [
|
525
|
+
{
|
526
|
+
"LogType": "Debug",
|
527
|
+
"Message": "UIAStaticText: name:Audio rect:{{0, 811}, {320, 38}}",
|
528
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
529
|
+
"Type": 0,
|
530
|
+
"children": [
|
531
|
+
|
532
|
+
]
|
533
|
+
}
|
534
|
+
]
|
535
|
+
},
|
536
|
+
{
|
537
|
+
"LogType": "Debug",
|
538
|
+
"Message": "UIATableCell: name:0:00, 0:14 value: rect:{{0, 848}, {320, 139}}",
|
539
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
540
|
+
"Type": 0,
|
541
|
+
"children": [
|
542
|
+
{
|
543
|
+
"LogType": "Debug",
|
544
|
+
"Message": "UIAStaticText: name:0:00, 0:14 value: rect:{{0, 848}, {320, 139}}",
|
545
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
546
|
+
"Type": 0,
|
547
|
+
"children": [
|
548
|
+
|
549
|
+
]
|
550
|
+
},
|
551
|
+
{
|
552
|
+
"LogType": "Debug",
|
553
|
+
"Message": "UIAButton: name:play button rect:{{0, 0}, {23, 28}}",
|
554
|
+
"Screenshot": "82CC182A-FBE5-4B8D-872F-15542947B944",
|
555
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
556
|
+
"Type": 0,
|
557
|
+
"children": [
|
558
|
+
|
559
|
+
]
|
560
|
+
},
|
561
|
+
{
|
562
|
+
"LogType": "Debug",
|
563
|
+
"Message": "UIASlider: value:0% rect:{{0, 0}, {129, 34}}",
|
564
|
+
"Screenshot": "B882401D-EC26-4F3B-A0A2-3B472E82082E",
|
565
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
566
|
+
"Type": 0,
|
567
|
+
"children": [
|
568
|
+
|
569
|
+
]
|
570
|
+
},
|
571
|
+
{
|
572
|
+
"LogType": "Debug",
|
573
|
+
"Message": "UIASlider: value:100% rect:{{0, 0}, {192, 34}}",
|
574
|
+
"Screenshot": "C9BEFA36-4DE9-495A-A4CB-AF180CBFF971",
|
575
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
576
|
+
"Type": 0,
|
577
|
+
"children": [
|
578
|
+
|
579
|
+
]
|
580
|
+
}
|
581
|
+
]
|
582
|
+
},
|
583
|
+
{
|
584
|
+
"LogType": "Debug",
|
585
|
+
"Message": "UIATableCell: name:Record value: rect:{{0, 988}, {320, 43}}",
|
586
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
587
|
+
"Type": 0,
|
588
|
+
"children": [
|
589
|
+
{
|
590
|
+
"LogType": "Debug",
|
591
|
+
"Message": "UIAButton: name:Record rect:{{0, 0}, {136, 30}}",
|
592
|
+
"Screenshot": "D3B34FAF-4AAC-45A0-B2FC-A123A153F83F",
|
593
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
594
|
+
"Type": 0,
|
595
|
+
"children": [
|
596
|
+
|
597
|
+
]
|
598
|
+
},
|
599
|
+
{
|
600
|
+
"LogType": "Debug",
|
601
|
+
"Message": "UIAButton: name:Remove rect:{{0, 0}, {136, 30}}",
|
602
|
+
"Screenshot": "B8EFCA7F-4CF2-42D1-A22F-B8E4D3C57BE7",
|
603
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
604
|
+
"Type": 0,
|
605
|
+
"children": [
|
606
|
+
|
607
|
+
]
|
608
|
+
}
|
609
|
+
]
|
610
|
+
}
|
611
|
+
]
|
612
|
+
}
|
613
|
+
]
|
614
|
+
},
|
615
|
+
{
|
616
|
+
"LogType": "Debug",
|
617
|
+
"Message": "UIAWindow: rect:{{0, 0}, {320, 568}}",
|
618
|
+
"Screenshot": "30EF0EC3-0B16-4C4E-8AAB-44EA51AF053C",
|
619
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
620
|
+
"Type": 0,
|
621
|
+
"children": [
|
622
|
+
{
|
623
|
+
"LogType": "Debug",
|
624
|
+
"Message": "UIAStatusBar: rect:{{0, 0}, {320, 20}}",
|
625
|
+
"Screenshot": "C912E855-A577-441D-8816-3F58797C07D9",
|
626
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
627
|
+
"Type": 0,
|
628
|
+
"children": [
|
629
|
+
{
|
630
|
+
"LogType": "Debug",
|
631
|
+
"Message": "UIAElement: name:Swipe down with three fingers to reveal the notification center., Swipe up with three fingers to reveal the control center, Double-tap to scroll to top rect:{{6, 0}, {38, 20}}",
|
632
|
+
"Screenshot": "81EE41EF-6B08-4085-A1EC-CB0A453B7DE2",
|
633
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
634
|
+
"Type": 0,
|
635
|
+
"children": [
|
636
|
+
|
637
|
+
]
|
638
|
+
},
|
639
|
+
{
|
640
|
+
"LogType": "Debug",
|
641
|
+
"Message": "UIAElement: name:3 of 3 Wi-Fi bars rect:{{49, 0}, {13, 20}}",
|
642
|
+
"Screenshot": "5B102B96-DB34-4C29-A838-2FE1850B2612",
|
643
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
644
|
+
"Type": 0,
|
645
|
+
"children": [
|
646
|
+
|
647
|
+
]
|
648
|
+
},
|
649
|
+
{
|
650
|
+
"LogType": "Debug",
|
651
|
+
"Message": "UIAElement: name:Network connection in progress rect:{{68, 0}, {10, 20}}",
|
652
|
+
"Screenshot": "B683AEAA-0260-43A7-A478-8ED70B755EC0",
|
653
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
654
|
+
"Type": 0,
|
655
|
+
"children": [
|
656
|
+
|
657
|
+
]
|
658
|
+
},
|
659
|
+
{
|
660
|
+
"LogType": "Debug",
|
661
|
+
"Message": "UIAElement: name:2:37 PM rect:{{137, 0}, {47, 20}}",
|
662
|
+
"Screenshot": "F1A86B82-7F63-40B0-9F3E-073EADBBBE8F",
|
663
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
664
|
+
"Type": 0,
|
665
|
+
"children": [
|
666
|
+
|
667
|
+
]
|
668
|
+
},
|
669
|
+
{
|
670
|
+
"LogType": "Debug",
|
671
|
+
"Message": "UIAElement: name:Network connection in progress rect:{{274, 0}, {10, 20}}",
|
672
|
+
"Screenshot": "76165A58-7AAB-4D33-A6A4-658DD2EB2D1A",
|
673
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
674
|
+
"Type": 0,
|
675
|
+
"children": [
|
676
|
+
|
677
|
+
]
|
678
|
+
},
|
679
|
+
{
|
680
|
+
"LogType": "Debug",
|
681
|
+
"Message": "UIAElement: name:100% battery power rect:{{290, 0}, {25, 20}}",
|
682
|
+
"Screenshot": "4AB9C5D7-F8EC-4ECF-860D-B84096727E35",
|
683
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
684
|
+
"Type": 0,
|
685
|
+
"children": [
|
686
|
+
|
687
|
+
]
|
688
|
+
}
|
689
|
+
]
|
690
|
+
}
|
691
|
+
]
|
692
|
+
},
|
693
|
+
{
|
694
|
+
"LogType": "Debug",
|
695
|
+
"Message": "UIAWindow: rect:{{0, 0}, {320, 568}}",
|
696
|
+
"Screenshot": "17A8FD1A-9485-41CD-9AEF-4CE9EC713438",
|
697
|
+
"Timestamp": "2014-03-04T20:37:09+00:00",
|
698
|
+
"Type": 0,
|
699
|
+
"children": [
|
700
|
+
|
701
|
+
]
|
702
|
+
}
|
703
|
+
]
|
704
|
+
}
|
705
|
+
]
|
706
|
+
</system-out>
|
707
|
+
<system-out>target.captureRectWithName("{origin:{x:0.00,y:0.00}, size:{height:568.00,width:320.00}}", "Clicking on the first template shows the compose screen.-fail")</system-out>
|
708
|
+
<system-out>3696C5B1-5177-4A8A-8FAD-9D7EEBE4B9C8</system-out>
|
709
|
+
</testcase>
|
710
|
+
<testcase name="Clicking the send button starts the send process. We receive the notification within 10 seconds." time="112.0">
|
711
|
+
<failure message="Clicking the send button starts the send process. We receive the notification within 10 seconds." type="Fail"/>
|
712
|
+
<system-out>target.frontMostApp().navigationBar().rightButton().tap()</system-out>
|
713
|
+
<error message="AssertionException: "Expected <1> but received <0>"" type="Error"/>
|
714
|
+
<system-out>UIATarget: name:iPhone Simulator rect:{{0, 0}, {320, 568}}
|
715
|
+
View Dump:
|
716
|
+
[
|
717
|
+
{
|
718
|
+
"LogType": "Debug",
|
719
|
+
"Message": "UIAApplication: name:InformaCast rect:{{0, 20}, {320, 548}}",
|
720
|
+
"Screenshot": "C386F2FB-65D0-4ACE-B522-107F5059AFB6",
|
721
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
722
|
+
"Type": 0,
|
723
|
+
"children": [
|
724
|
+
{
|
725
|
+
"LogType": "Debug",
|
726
|
+
"Message": "UIAWindow: rect:{{0, 0}, {320, 568}}",
|
727
|
+
"Screenshot": "50D01E4D-486C-4362-8C9D-00E260F6DD66",
|
728
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
729
|
+
"Type": 0,
|
730
|
+
"children": [
|
731
|
+
{
|
732
|
+
"LogType": "Debug",
|
733
|
+
"Message": "UIANavigationBar: name:Notifications rect:{{0, 20}, {320, 44}}",
|
734
|
+
"Screenshot": "8B5BA665-D1CE-44A5-9C77-7814046977B2",
|
735
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
736
|
+
"Type": 0,
|
737
|
+
"children": [
|
738
|
+
{
|
739
|
+
"LogType": "Debug",
|
740
|
+
"Message": "UIAImage: rect:{{0, 0}, {320, 64}}",
|
741
|
+
"Screenshot": "7A402D5F-4995-43D4-BD2A-B5E1834F958D",
|
742
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
743
|
+
"Type": 0,
|
744
|
+
"children": [
|
745
|
+
{
|
746
|
+
"LogType": "Debug",
|
747
|
+
"Message": "UIAImage: rect:{{0, 64}, {320, 0}}",
|
748
|
+
"Screenshot": "A3E6FE95-FE3E-40B6-9D54-014CDAF4841F",
|
749
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
750
|
+
"Type": 0,
|
751
|
+
"children": [
|
752
|
+
|
753
|
+
]
|
754
|
+
}
|
755
|
+
]
|
756
|
+
},
|
757
|
+
{
|
758
|
+
"LogType": "Debug",
|
759
|
+
"Message": "UIAButton: name:menu rect:{{5, 26}, {44, 30}}",
|
760
|
+
"Screenshot": "BB248BA8-5CBD-42B9-869B-C7042FFBAC2A",
|
761
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
762
|
+
"Type": 0,
|
763
|
+
"children": [
|
764
|
+
|
765
|
+
]
|
766
|
+
},
|
767
|
+
{
|
768
|
+
"LogType": "Debug",
|
769
|
+
"Message": "UIAButton: name:UINavigationBarBackIndicatorDefault.png rect:{{8, 32}, {12, 20}}",
|
770
|
+
"Screenshot": "F5B6A155-AE56-4460-9229-3C53F5BF8977",
|
771
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
772
|
+
"Type": 0,
|
773
|
+
"children": [
|
774
|
+
|
775
|
+
]
|
776
|
+
},
|
777
|
+
{
|
778
|
+
"LogType": "Debug",
|
779
|
+
"Message": "UIAStaticText: name:Notifications value:Notifications rect:{{112, 28}, {96, 27}}",
|
780
|
+
"Screenshot": "8B3D83C2-9930-4A1E-81D2-B1638DE6D87C",
|
781
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
782
|
+
"Type": 0,
|
783
|
+
"children": [
|
784
|
+
|
785
|
+
]
|
786
|
+
},
|
787
|
+
{
|
788
|
+
"LogType": "Debug",
|
789
|
+
"Message": "UIAButton: name:Compose rect:{{274, 26}, {45, 30}}",
|
790
|
+
"Screenshot": "8B839C37-B793-4B04-A262-AB111BBD001A",
|
791
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
792
|
+
"Type": 0,
|
793
|
+
"children": [
|
794
|
+
|
795
|
+
]
|
796
|
+
}
|
797
|
+
]
|
798
|
+
},
|
799
|
+
{
|
800
|
+
"LogType": "Debug",
|
801
|
+
"Message": "UIATableView: name:Inbox Table rect:{{0, 0}, {320, 568}}",
|
802
|
+
"Screenshot": "DD0F2837-147F-473F-8D1E-9B9C126AAA31",
|
803
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
804
|
+
"Type": 0,
|
805
|
+
"children": [
|
806
|
+
{
|
807
|
+
"LogType": "Debug",
|
808
|
+
"Message": "UIAImage: rect:{{0, 20}, {320, 44}}",
|
809
|
+
"Screenshot": "316D0409-CE88-4EEF-998D-8D9A36462621",
|
810
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
811
|
+
"Type": 0,
|
812
|
+
"children": [
|
813
|
+
|
814
|
+
]
|
815
|
+
},
|
816
|
+
{
|
817
|
+
"LogType": "Debug",
|
818
|
+
"Message": "UIASearchBar: value:Search rect:{{8, 28}, {304, 28}}",
|
819
|
+
"Screenshot": "E44379B4-43B5-4840-AC77-C2A2A6C9292A",
|
820
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
821
|
+
"Type": 0,
|
822
|
+
"children": [
|
823
|
+
|
824
|
+
]
|
825
|
+
}
|
826
|
+
]
|
827
|
+
}
|
828
|
+
]
|
829
|
+
},
|
830
|
+
{
|
831
|
+
"LogType": "Debug",
|
832
|
+
"Message": "UIAWindow: rect:{{0, 0}, {320, 568}}",
|
833
|
+
"Screenshot": "5B262F64-21F8-4D59-A34F-105EC00112AD",
|
834
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
835
|
+
"Type": 0,
|
836
|
+
"children": [
|
837
|
+
{
|
838
|
+
"LogType": "Debug",
|
839
|
+
"Message": "UIAStatusBar: rect:{{0, 0}, {320, 20}}",
|
840
|
+
"Screenshot": "1DE8438C-3BC5-433A-90C8-5ED317E04775",
|
841
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
842
|
+
"Type": 0,
|
843
|
+
"children": [
|
844
|
+
{
|
845
|
+
"LogType": "Debug",
|
846
|
+
"Message": "UIAElement: name:Swipe down with three fingers to reveal the notification center., Swipe up with three fingers to reveal the control center, Double-tap to scroll to top rect:{{6, 0}, {38, 20}}",
|
847
|
+
"Screenshot": "E19A38AC-BCB8-43D9-87BD-EFE5747E70EF",
|
848
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
849
|
+
"Type": 0,
|
850
|
+
"children": [
|
851
|
+
|
852
|
+
]
|
853
|
+
},
|
854
|
+
{
|
855
|
+
"LogType": "Debug",
|
856
|
+
"Message": "UIAElement: name:3 of 3 Wi-Fi bars rect:{{49, 0}, {13, 20}}",
|
857
|
+
"Screenshot": "BA4EB5FE-F6E2-4B89-8CD9-20E1AD2E110B",
|
858
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
859
|
+
"Type": 0,
|
860
|
+
"children": [
|
861
|
+
|
862
|
+
]
|
863
|
+
},
|
864
|
+
{
|
865
|
+
"LogType": "Debug",
|
866
|
+
"Message": "UIAElement: name:2:39 PM rect:{{137, 0}, {47, 20}}",
|
867
|
+
"Screenshot": "1847A931-F57C-4AAB-917D-E735C892CF8F",
|
868
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
869
|
+
"Type": 0,
|
870
|
+
"children": [
|
871
|
+
|
872
|
+
]
|
873
|
+
},
|
874
|
+
{
|
875
|
+
"LogType": "Debug",
|
876
|
+
"Message": "UIAElement: name:100% battery power rect:{{290, 0}, {25, 20}}",
|
877
|
+
"Screenshot": "3EE308DA-6B08-4438-9ADF-F8A8895E13AA",
|
878
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
879
|
+
"Type": 0,
|
880
|
+
"children": [
|
881
|
+
|
882
|
+
]
|
883
|
+
}
|
884
|
+
]
|
885
|
+
}
|
886
|
+
]
|
887
|
+
},
|
888
|
+
{
|
889
|
+
"LogType": "Debug",
|
890
|
+
"Message": "UIAWindow: rect:{{0, 0}, {320, 568}}",
|
891
|
+
"Screenshot": "45E13172-2D53-474D-8C23-8B9EEB03F143",
|
892
|
+
"Timestamp": "2014-03-04T20:39:01+00:00",
|
893
|
+
"Type": 0,
|
894
|
+
"children": [
|
895
|
+
|
896
|
+
]
|
897
|
+
}
|
898
|
+
]
|
899
|
+
}
|
900
|
+
]
|
901
|
+
</system-out>
|
902
|
+
<system-out>target.captureRectWithName("{origin:{x:0.00,y:0.00}, size:{height:568.00,width:320.00}}", "Clicking the send button starts the send process. We receive the notification within 10 seconds.-fail")</system-out>
|
903
|
+
<system-out>4A226AB2-F15D-4ACF-A508-9B1A1868230B</system-out>
|
904
|
+
</testcase>
|
905
|
+
<testcase name="Deleting the notification removes it from the table view" time="10.0">
|
906
|
+
<failure message="Deleting the notification removes it from the table view" type="Fail"/>
|
907
|
+
<system-out>Cannot perform action on invalid element: UIAElementNil from target.frontMostApp().mainWindow().tableViews()["Inbox Table"].cells()[0]</system-out>
|
908
|
+
<error message="VerboseError: Cannot perform action on invalid element: UIAElementNil from target.frontMostApp().mainWindow().tableViews()["Inbox Table"].cells()[0]" type="Error"/>
|
909
|
+
<system-out>UIATarget: name:iPhone Simulator rect:{{0, 0}, {320, 568}}
|
910
|
+
View Dump:
|
911
|
+
[
|
912
|
+
{
|
913
|
+
"LogType": "Debug",
|
914
|
+
"Message": "UIAApplication: name:InformaCast rect:{{0, 20}, {320, 548}}",
|
915
|
+
"Screenshot": "92C27D04-2D44-4456-B984-2B9D05A494F1",
|
916
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
917
|
+
"Type": 0,
|
918
|
+
"children": [
|
919
|
+
{
|
920
|
+
"LogType": "Debug",
|
921
|
+
"Message": "UIAWindow: rect:{{0, 0}, {320, 568}}",
|
922
|
+
"Screenshot": "4BA18C43-9CCF-4989-B4B6-8943E807EE83",
|
923
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
924
|
+
"Type": 0,
|
925
|
+
"children": [
|
926
|
+
{
|
927
|
+
"LogType": "Debug",
|
928
|
+
"Message": "UIANavigationBar: name:Notifications rect:{{0, 20}, {320, 44}}",
|
929
|
+
"Screenshot": "AE38C533-0099-4A22-AFB2-5BC197BA7C60",
|
930
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
931
|
+
"Type": 0,
|
932
|
+
"children": [
|
933
|
+
{
|
934
|
+
"LogType": "Debug",
|
935
|
+
"Message": "UIAImage: rect:{{0, 0}, {320, 64}}",
|
936
|
+
"Screenshot": "B9C865AE-B499-43DD-A71A-E6739D0A4CEA",
|
937
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
938
|
+
"Type": 0,
|
939
|
+
"children": [
|
940
|
+
{
|
941
|
+
"LogType": "Debug",
|
942
|
+
"Message": "UIAImage: rect:{{0, 64}, {320, 0}}",
|
943
|
+
"Screenshot": "532D72C8-168E-4888-8767-CFB429E6EEA8",
|
944
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
945
|
+
"Type": 0,
|
946
|
+
"children": [
|
947
|
+
|
948
|
+
]
|
949
|
+
}
|
950
|
+
]
|
951
|
+
},
|
952
|
+
{
|
953
|
+
"LogType": "Debug",
|
954
|
+
"Message": "UIAButton: name:menu rect:{{5, 26}, {44, 30}}",
|
955
|
+
"Screenshot": "5A2706AA-114E-43ED-B015-5CD8D7032724",
|
956
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
957
|
+
"Type": 0,
|
958
|
+
"children": [
|
959
|
+
|
960
|
+
]
|
961
|
+
},
|
962
|
+
{
|
963
|
+
"LogType": "Debug",
|
964
|
+
"Message": "UIAButton: name:UINavigationBarBackIndicatorDefault.png rect:{{8, 32}, {12, 20}}",
|
965
|
+
"Screenshot": "08B77B31-76F9-4FF2-A253-C91A23122158",
|
966
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
967
|
+
"Type": 0,
|
968
|
+
"children": [
|
969
|
+
|
970
|
+
]
|
971
|
+
},
|
972
|
+
{
|
973
|
+
"LogType": "Debug",
|
974
|
+
"Message": "UIAStaticText: name:Notifications value:Notifications rect:{{112, 28}, {96, 27}}",
|
975
|
+
"Screenshot": "0FF86976-A5C6-4715-BAF5-375B921FC1BE",
|
976
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
977
|
+
"Type": 0,
|
978
|
+
"children": [
|
979
|
+
|
980
|
+
]
|
981
|
+
},
|
982
|
+
{
|
983
|
+
"LogType": "Debug",
|
984
|
+
"Message": "UIAButton: name:Compose rect:{{274, 26}, {45, 30}}",
|
985
|
+
"Screenshot": "EE6BA9CC-D377-437A-9E6E-AC9516829F08",
|
986
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
987
|
+
"Type": 0,
|
988
|
+
"children": [
|
989
|
+
|
990
|
+
]
|
991
|
+
}
|
992
|
+
]
|
993
|
+
},
|
994
|
+
{
|
995
|
+
"LogType": "Debug",
|
996
|
+
"Message": "UIATableView: name:Inbox Table rect:{{0, 0}, {320, 568}}",
|
997
|
+
"Screenshot": "4FD3E04F-FEAC-4202-8710-CC5383FD052E",
|
998
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
999
|
+
"Type": 0,
|
1000
|
+
"children": [
|
1001
|
+
{
|
1002
|
+
"LogType": "Debug",
|
1003
|
+
"Message": "UIAImage: rect:{{0, 20}, {320, 44}}",
|
1004
|
+
"Screenshot": "861234BF-8726-4350-8768-AAB5E7CE53E0",
|
1005
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
1006
|
+
"Type": 0,
|
1007
|
+
"children": [
|
1008
|
+
|
1009
|
+
]
|
1010
|
+
},
|
1011
|
+
{
|
1012
|
+
"LogType": "Debug",
|
1013
|
+
"Message": "UIASearchBar: value:Search rect:{{8, 28}, {304, 28}}",
|
1014
|
+
"Screenshot": "E7449AA6-BE80-4AD8-B747-9A36EC9F60AA",
|
1015
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
1016
|
+
"Type": 0,
|
1017
|
+
"children": [
|
1018
|
+
|
1019
|
+
]
|
1020
|
+
}
|
1021
|
+
]
|
1022
|
+
}
|
1023
|
+
]
|
1024
|
+
},
|
1025
|
+
{
|
1026
|
+
"LogType": "Debug",
|
1027
|
+
"Message": "UIAWindow: rect:{{0, 0}, {320, 568}}",
|
1028
|
+
"Screenshot": "35ED98AF-BDFF-4F0D-8831-4480140312E4",
|
1029
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
1030
|
+
"Type": 0,
|
1031
|
+
"children": [
|
1032
|
+
{
|
1033
|
+
"LogType": "Debug",
|
1034
|
+
"Message": "UIAStatusBar: rect:{{0, 0}, {320, 20}}",
|
1035
|
+
"Screenshot": "3FD2B46A-6705-4934-8045-E2FF4A03B1D7",
|
1036
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
1037
|
+
"Type": 0,
|
1038
|
+
"children": [
|
1039
|
+
{
|
1040
|
+
"LogType": "Debug",
|
1041
|
+
"Message": "UIAElement: name:Swipe down with three fingers to reveal the notification center., Swipe up with three fingers to reveal the control center, Double-tap to scroll to top rect:{{6, 0}, {38, 20}}",
|
1042
|
+
"Screenshot": "96772486-B9BA-4A42-916E-81EEF968FB0A",
|
1043
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
1044
|
+
"Type": 0,
|
1045
|
+
"children": [
|
1046
|
+
|
1047
|
+
]
|
1048
|
+
},
|
1049
|
+
{
|
1050
|
+
"LogType": "Debug",
|
1051
|
+
"Message": "UIAElement: name:3 of 3 Wi-Fi bars rect:{{49, 0}, {13, 20}}",
|
1052
|
+
"Screenshot": "F0C9ABC3-3D5D-45D7-A004-E33557613115",
|
1053
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
1054
|
+
"Type": 0,
|
1055
|
+
"children": [
|
1056
|
+
|
1057
|
+
]
|
1058
|
+
},
|
1059
|
+
{
|
1060
|
+
"LogType": "Debug",
|
1061
|
+
"Message": "UIAElement: name:2:39 PM rect:{{137, 0}, {47, 20}}",
|
1062
|
+
"Screenshot": "6E23CFA0-866B-4C2E-A6DD-3A007D867BAB",
|
1063
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
1064
|
+
"Type": 0,
|
1065
|
+
"children": [
|
1066
|
+
|
1067
|
+
]
|
1068
|
+
},
|
1069
|
+
{
|
1070
|
+
"LogType": "Debug",
|
1071
|
+
"Message": "UIAElement: name:100% battery power rect:{{290, 0}, {25, 20}}",
|
1072
|
+
"Screenshot": "2A823045-E536-44B1-A129-7316820E3E07",
|
1073
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
1074
|
+
"Type": 0,
|
1075
|
+
"children": [
|
1076
|
+
|
1077
|
+
]
|
1078
|
+
}
|
1079
|
+
]
|
1080
|
+
}
|
1081
|
+
]
|
1082
|
+
},
|
1083
|
+
{
|
1084
|
+
"LogType": "Debug",
|
1085
|
+
"Message": "UIAWindow: rect:{{0, 0}, {320, 568}}",
|
1086
|
+
"Screenshot": "5F5DAF4D-C417-4546-A3CF-63CC8EE2814D",
|
1087
|
+
"Timestamp": "2014-03-04T20:39:11+00:00",
|
1088
|
+
"Type": 0,
|
1089
|
+
"children": [
|
1090
|
+
|
1091
|
+
]
|
1092
|
+
}
|
1093
|
+
]
|
1094
|
+
}
|
1095
|
+
]
|
1096
|
+
</system-out>
|
1097
|
+
<system-out>target.captureRectWithName("{origin:{x:0.00,y:0.00}, size:{height:568.00,width:320.00}}", "Deleting the notification removes it from the table view-fail")</system-out>
|
1098
|
+
<system-out>119716EC-B426-42CE-B90E-0A4F553254FD</system-out>
|
1099
|
+
</testcase>
|
1100
|
+
<testcase name="Clicking the menu icon shows the slide out menu with the correct details" time="0.0">
|
1101
|
+
<system-out>target.frontMostApp().navigationBar().leftButton().tap()</system-out>
|
1102
|
+
</testcase>
|
1103
|
+
<testcase name="Clicking the log out button starts the log out process" time="2.0">
|
1104
|
+
<system-out>target.frontMostApp().mainWindow().tableViews()["Menu Table"].cells()["Log Out"].tap()</system-out>
|
1105
|
+
</testcase>
|
1106
|
+
</testsuite>
|