-
Notifications
You must be signed in to change notification settings - Fork 4
/
step.yml
124 lines (111 loc) · 4.88 KB
/
step.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
title: "Calabash iOS UI Test"
summary: |-
Runs Calabash iOS UI tests.
description: |-
[This Step](https://github.com/bitrise-steplib/steps-calabash-ios-uitest) runs Calabash UI tests for iOS.
Before you start:
Make sure you have the Xcode Archive Step before the Calabash iOS UI test Step in your Workflow.
### Configuring the Step
1. Add the path to the directory which contains your Calabash features directory in the **Directory of your calabash features** input.
2. In the **Gemfile path**, add the path to the Gemfile which contains calabash-cucumber gem.
3. Add the **Path to the iOS .app file** which supports the selected simulator device architecture.
4. Set a **Device** as it is shown in your Xcode's device selection dropdown UI, for example, `iPhone 6`.
5. Add the **OS version** where the format should be, for example, `iOS 8.4`, `latest`.
6. Add **Additional options for `cucumber` call** if needed. The options will be added to the end of the cucumber call.
7. Add the **calabash-cucumber gem version**. If this input specifies a gem version, that particular version will be used. If the `calabash_cucumber_version` is not specified, the gem version specified by Gemfile at `gem_file_path` will be used. If Gemfile does not exist with calabash-cucumber gem, the latest version will be used
### Useful links
- [Testing with Bitrise](https://devcenter.bitrise.io/testing/testing-index/)
### Related Steps
- [Xcode Analyze](https://www.bitrise.io/integrations/steps/xcode-analyze)
- [Flutter](https://www.bitrise.io/integrations/steps/flutter)
website: https://github.com/bitrise-steplib/steps-calabash-ios-uitest
source_code_url: https://github.com/bitrise-steplib/steps-calabash-ios-uitest
support_url: https://github.com/bitrise-steplib/steps-calabash-ios-uitest/issues
host_os_tags:
- osx-10.10
project_type_tags:
- ios
type_tags:
- testing
is_requires_admin_user: true
is_always_run: false
is_skippable: false
deps:
brew:
- name: go
apt_get:
- name: golang
bin_name: go
toolkit:
go:
package_name: github.com/bitrise-steplib/steps-calabash-ios-uitest
inputs:
- work_dir:
opts:
title: "Directory of your calabash features"
description: |-
Path to the directory, which contains your calabash features directory.
For example, if calabash features directory path is `CreditCardValidator.iOS/features`,
then work_dir should be `CreditCardValidator.iOS`.
is_required: true
- gem_file_path: $work_dir/Gemfile
opts:
title: "Gemfile path"
description: |
Path to the Gemfile which contains calabash-cucumber gem.
If Gemfile doesn't exist or doesn't contain calabash-cucumber gem:
- if `calabash_cucumber_version` input is not specified, then the latest version will be used.
- app_path: $BITRISE_APP_PATH
opts:
title: "Path to the iOS .app file to test"
description: |-
Path to the iOS .app file, which supports selected simulator `Device` architecture.
__In case of Xamarin .app file:__
You can ensure `Supported architectures` in your project's `Project Options/Code Generation and Runtime/Supported architectures`.
If `i386` architecture is selected, simulator device should be a 32-bit device.
If `x86_64` architecture is selected, simulator device should be a 64-bit device.
If `i386 + x86_64` architecture is selected, simulator can be both 32-bit and 64-bit device.
- simulator_device: iPhone 6
opts:
title: Device
description: |
Set it as it is shown in
Xcode's device selection dropdown UI.
A couple of examples (the
actual available options depend on which versions
are installed):
* iPhone 6
* iPhone 6 Plus
* iPad
* iPad Air
is_required: true
- simulator_os_version: latest
opts:
title: "OS version"
description: |
A couple of format examples:
* iOS 8.4
* iOS 9.3
* latest
is_required: true
- additional_options: --format html --out $BITRISE_DEPLOY_DIR/calabash-ios_report.html
opts:
title: Additional options for `cucumber` call
description: |
Options added to the end of the `cucumber` call.
- calabash_cucumber_version:
opts:
title: "calabash-cucumber gem version"
description: |
calabash-cucumber gem version to use.
__If this input specifies the gem version, this version will be used, even if `gem_file_path` is provided.__
If `calabash_cucumber_version` not specified:
- gem version will be used specified by Gemfile at `gem_file_path`
- if Gemfile doesn't exist with calabash-cucumber gem, then the latest version will be used.
outputs:
- BITRISE_XAMARIN_TEST_RESULT:
opts:
title: Result of the tests. 'succeeded' or 'failed'.
value_options:
- succeeded
- failed