Skip to content

Commit 328c8d3

Browse files
authored
ci: add initial gha to run by manual (#984)
1 parent 9c142b8 commit 328c8d3

File tree

1 file changed

+67
-0
lines changed

1 file changed

+67
-0
lines changed

.github/functional-test.yml

+67
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
name: Functional Tests
2+
3+
on:
4+
# Run by manual at this time
5+
workflow_dispatch:
6+
# push:
7+
# branches: [ master ]
8+
# pull_request:
9+
# branches: [ master ]
10+
11+
concurrency:
12+
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
13+
cancel-in-progress: true
14+
15+
jobs:
16+
ios_test:
17+
strategy:
18+
fail-fast: false
19+
matrix:
20+
test_targets:
21+
- target: search_context/find_by_*.py remote_fs_tests.py safari_tests.py execute_driver_tests.py
22+
name: func_test_ios1
23+
24+
runs-on: macos-14
25+
26+
steps:
27+
- uses: actions/checkout@v3
28+
29+
- name: Install Node.js
30+
uses: actions/setup-node@v3
31+
with:
32+
node-version: 'lts/*'
33+
34+
- name: Select Xcode
35+
uses: maxim-lobanov/setup-xcode@v1
36+
with:
37+
xcode-version: 15.3
38+
- run: defaults write com.apple.iphonesimulator PasteboardAutomaticSync -bool false
39+
40+
- uses: futureware-tech/simulator-action@v3
41+
with:
42+
# https://github.com/actions/runner-images/blob/main/images/macos/macos-14-arm64-Readme.md
43+
model: 'iPhone 15 Plus'
44+
os_version: '17.4'
45+
46+
# Start Appium
47+
- run: npm install -g appium
48+
- run: |
49+
appium driver install xcuitest
50+
appium plugin install images
51+
appium plugin install execute-driver
52+
nohup appium --use-plugins=images,execute-driver --relaxed-security --log-timestamp --log-no-colors --base-path=/wd/hub > appium.log &
53+
54+
- name: Set up Python 3.9
55+
uses: actions/setup-python@v3
56+
with:
57+
python-version: 3.9
58+
59+
- run: python -m pytest ${{ test_targets.target}} --doctest-modules --junitxml=junit/test-results.xml --cov=com --cov-report=xml --cov-report=html
60+
working-directory: test/functional/ios
61+
62+
- name: Save server output
63+
if: ${{ always() }}
64+
uses: actions/upload-artifact@master
65+
with:
66+
name: appium-ios-${{matrix.test_targets.name}}.log
67+
path: appium.log

0 commit comments

Comments
 (0)