Mercurial > public > simoleon
annotate SimoleonScreenshots/SimoleonScreenshots.swift @ 155:681f2cbe8c7f
Refactor error handling class
author | Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com> |
---|---|
date | Wed, 25 Aug 2021 11:00:21 +0100 |
parents | 4271fb5f69e2 |
children |
rev | line source |
---|---|
0
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
1 // |
109
587924519d3b
Reestructured schemes and targets
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
106
diff
changeset
|
2 // SimoleonScreenshots.swift |
587924519d3b
Reestructured schemes and targets
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
106
diff
changeset
|
3 // SimoleonScreenshots |
0
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
4 // |
109
587924519d3b
Reestructured schemes and targets
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
106
diff
changeset
|
5 // Created by Dennis Concepción Martín on 5/8/21. |
0
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
6 // |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
7 |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
8 import XCTest |
133
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
9 import CoreData |
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
10 // Automate screenshots with Fastlane |
109
587924519d3b
Reestructured schemes and targets
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
106
diff
changeset
|
11 class SimoleonScreenshots: XCTestCase { |
139
a4aeca1ad34a
Fix random test crashes with Fastlane
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
133
diff
changeset
|
12 var screenshotEndingName = "" |
0
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
13 |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
14 override func setUpWithError() throws { |
133
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
15 // This method is called before the invocation of each test method in the class. |
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
16 |
106
599fe95307f6
Fixes minor bugs
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
100
diff
changeset
|
17 if UIDevice.current.userInterfaceIdiom == .pad { |
599fe95307f6
Fixes minor bugs
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
100
diff
changeset
|
18 XCUIDevice.shared.orientation = .landscapeLeft |
139
a4aeca1ad34a
Fix random test crashes with Fastlane
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
133
diff
changeset
|
19 screenshotEndingName = "-force_landscapeleft" |
106
599fe95307f6
Fixes minor bugs
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
100
diff
changeset
|
20 } |
0
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
21 |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
22 // In UI tests it is usually best to stop immediately when a failure occurs. |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
23 continueAfterFailure = false |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
24 } |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
25 |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
26 override func tearDownWithError() throws { |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
27 // Put teardown code here. This method is called after the invocation of each test method in the class. |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
28 } |
109
587924519d3b
Reestructured schemes and targets
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
106
diff
changeset
|
29 |
133
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
30 func testLaunchScreenshot() throws { |
144
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
31 let app = XCUIApplication() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
32 setupSnapshot(app) |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
33 app.launch() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
34 |
106
599fe95307f6
Fixes minor bugs
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
100
diff
changeset
|
35 if UIDevice.current.userInterfaceIdiom == .pad { |
144
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
36 app.tables["Sidebar"].buttons["NavigateToConversion"].tap() |
106
599fe95307f6
Fixes minor bugs
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
100
diff
changeset
|
37 } |
599fe95307f6
Fixes minor bugs
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
100
diff
changeset
|
38 |
133
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
39 sleep(2) |
139
a4aeca1ad34a
Fix random test crashes with Fastlane
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
133
diff
changeset
|
40 snapshot("1Launch\(screenshotEndingName)") |
106
599fe95307f6
Fixes minor bugs
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
100
diff
changeset
|
41 } |
599fe95307f6
Fixes minor bugs
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
100
diff
changeset
|
42 |
133
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
43 func testConvertAmountScreenshot() throws { |
144
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
44 let app = XCUIApplication() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
45 setupSnapshot(app) |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
46 app.launch() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
47 |
106
599fe95307f6
Fixes minor bugs
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
100
diff
changeset
|
48 if UIDevice.current.userInterfaceIdiom == .pad { |
144
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
49 app.tables["Sidebar"].buttons["NavigateToConversion"].tap() |
106
599fe95307f6
Fixes minor bugs
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
100
diff
changeset
|
50 } |
599fe95307f6
Fixes minor bugs
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
100
diff
changeset
|
51 |
144
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
52 let conversionTextField = app.textFields["ConversionTextField"] |
133
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
53 conversionTextField.tap() |
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
54 conversionTextField.typeText("1030.15\n") |
139
a4aeca1ad34a
Fix random test crashes with Fastlane
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
133
diff
changeset
|
55 snapshot("2Conversion\(screenshotEndingName)") |
133
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
56 } |
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
57 |
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
58 func testCurrencySelectorScreenshot() throws { |
144
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
59 let app = XCUIApplication() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
60 setupSnapshot(app) |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
61 app.launch() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
62 |
133
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
63 if UIDevice.current.userInterfaceIdiom == .pad { |
144
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
64 app.tables["Sidebar"].buttons["NavigateToConversion"].tap() |
93
529feb1fc8d5
Added UI Tests for capture screenshots
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
90
diff
changeset
|
65 } |
106
599fe95307f6
Fixes minor bugs
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
100
diff
changeset
|
66 |
144
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
67 app.scrollViews.buttons["OpenCurrencySelector"].tap() |
139
a4aeca1ad34a
Fix random test crashes with Fastlane
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
133
diff
changeset
|
68 snapshot("3CurrencySelector\(screenshotEndingName)") |
96
fa994172c050
Breaked in parts UI Tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
93
diff
changeset
|
69 } |
fa994172c050
Breaked in parts UI Tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
93
diff
changeset
|
70 |
133
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
71 func testFavoriteScreenshot() throws { |
144
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
72 let app = XCUIApplication() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
73 setupSnapshot(app) |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
74 app.launch() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
75 |
99
1d661f15adab
Fixes UI Testing bugs on iPad
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
96
diff
changeset
|
76 if UIDevice.current.userInterfaceIdiom == .pad { |
144
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
77 app.tables["Sidebar"].buttons["NavigateToFavorites"].tap() |
99
1d661f15adab
Fixes UI Testing bugs on iPad
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
96
diff
changeset
|
78 } else { |
144
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
139
diff
changeset
|
79 app.tabBars.buttons.element(boundBy: 1).tap() |
99
1d661f15adab
Fixes UI Testing bugs on iPad
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
96
diff
changeset
|
80 } |
133
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
81 |
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
82 sleep(1) |
f54d3dabb2d3
Update test for screenshots
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
109
diff
changeset
|
83 |
139
a4aeca1ad34a
Fix random test crashes with Fastlane
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
133
diff
changeset
|
84 snapshot("4Favorites\(screenshotEndingName)") |
44
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
85 } |
0
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
86 } |