{"id":23039512,"url":"https://github.com/lynix28/ios-mobileui-appium-wdio-example","last_synced_at":"2025-04-02T23:46:56.707Z","repository":{"id":170726953,"uuid":"646520546","full_name":"lynix28/ios-mobileui-appium-wdio-example","owner":"lynix28","description":"iOS Mobile UI Automation Test Project Example with Appium + WebdriverIO","archived":false,"fork":false,"pushed_at":"2023-08-22T09:44:31.000Z","size":6598,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-08T14:13:20.834Z","etag":null,"topics":["appium","appium-ios","automated-testing","ios-testing","mobile-testing","mocha-framework","wdio","webdriverio"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lynix28.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-05-28T16:58:05.000Z","updated_at":"2023-08-21T22:18:18.000Z","dependencies_parsed_at":null,"dependency_job_id":"51e5a2a8-2a49-4940-87c2-287ac273f8f5","html_url":"https://github.com/lynix28/ios-mobileui-appium-wdio-example","commit_stats":null,"previous_names":["lynix28/ios-mobileui-appium-wdio-example"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lynix28%2Fios-mobileui-appium-wdio-example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lynix28%2Fios-mobileui-appium-wdio-example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lynix28%2Fios-mobileui-appium-wdio-example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lynix28%2Fios-mobileui-appium-wdio-example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lynix28","download_url":"https://codeload.github.com/lynix28/ios-mobileui-appium-wdio-example/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246911486,"owners_count":20853655,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["appium","appium-ios","automated-testing","ios-testing","mobile-testing","mocha-framework","wdio","webdriverio"],"created_at":"2024-12-15T18:32:38.531Z","updated_at":"2025-04-02T23:46:56.689Z","avatar_url":"https://github.com/lynix28.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# [MERGED TO OTHER PROJECT]\n# iOS MobileUI Automation Test Project Example with Appium \u0026 WebdriverIO\n[![CircleCI](https://dl.circleci.com/status-badge/img/gh/lynix28/ios-mobileui-appium-wdio-example/tree/master.svg?style=shield)](https://dl.circleci.com/status-badge/redirect/gh/lynix28/ios-mobileui-appium-wdio-example/tree/master)\n[![SauceLabs](https://img.shields.io/badge/integrated%20to-SauceLabs-red)](https://app.saucelabs.com/u/oauth-lynixizunia-7ba4e)\n\n---\n\nThis project example is merged to: https://github.com/lynix28/mobileui-appium-wdio-example\n\nFor further update check on the new repo\n\n\n---\n\n\u003ch3\u003e\u003cins\u003eRequirements\u003c/h3\u003e\n  \n- NodeJS\n- Appium Server\n- Appium Inspector (to find selector)\n- XCode (for iOS Simulator)\n- Demo App (for testing sample) by Sauce Labs\n\n\u003ch3\u003e\u003cins\u003eNode Modules\u003c/h3\u003e\n  \n- WebdriverIO\n- Mocha (for Test Framework)\n- Allure (for Test Reporting)\n- Chai (for Assessment)\n- Sauce Labs (for Test on Cloud)\n- Dotenv\n\n\u003ch3\u003e\u003cins\u003eSetup with `package.json`\u003c/h3\u003e\n  \n- `npm install`\n\n\u003ch3\u003e\u003cins\u003eSetup manually\u003c/h3\u003e\n  \n- `npm init -y`\n- `npm install @wdio/cli`\n- `./node_modules/.bin/wdio config` -\u003e for quick setup or continue to install the following module below.\n- `npm install @wdio/local-runner`\n- `npm install @wdio/appium-service`\n- `npm install @wdio/sauce-service`\n- `npm install @wdio/mocha-framework`\n- `npm install @wdio/allure-reporter`\n- `npm install dotenv`\n- `npm install chai`\n\n\u003ch3\u003e\u003cins\u003eSetup WDA to Simulator | webdriveragent\u003c/h3\u003e\n\n- `npm install --save-dev appium@next`\n- `./node_modules/.bin/appium driver install xcuitest` -\u003e install Appium driver for iOS testing\n- Run Appium Server\n- Run Appium Inspector and try to connect to the Simulator (It will take quite long)\n- If success accessing the Simulator by Appium Inspector, then the WDA is completely installed\n\n\u003ch3\u003e\u003cins\u003eTo compile the test result\u003c/h3\u003e\n  \n- `npm install --save-dev allure-commandline`\n- `./node_modules/.bin/allure generate [allure_output_dir] \u0026\u0026 ./node_modules/.bin/allure open` (edit the 'allure_output_dir' with your directory)\n\nor follow this instruction to make it automatically -\u003e https://webdriver.io/docs/allure-reporter#autogenerate-report\n\n\u003ch3\u003e\u003cins\u003eTo run the test\u003c/h3\u003e\n  \n| Command | Description |\n| --- | --- |\n| `npm run test` | Run all tests |\n| `npm run test -- --suite SuiteName` | Run a specific Test Suite Bundle (need to define it inside 'wdio.conf.js') |\n| `npm run test -- --spec ./path/to/file/FileName` | Run a specific Test Case / Suite (need to define it inside 'wdio.conf.js') |\n\n\u003ch3\u003e\u003cins\u003eCommon issue that probably occured after the setup\u003c/h3\u003e\n\nIf u get this error\n`Error: \"ts-node/esm/transpile-only 'resolve'\" did not call the next hook in its chain and did not explicitly signal a short circuit. If this is intentional, include 'shortCircuit: true' in the hook's return.`\n\ntry to fix it with\n`npm install --save-dev ts-node`\n\n\u003ch3\u003e\u003cins\u003eTo check the report\u003c/h3\u003e\n  \n- `npm run report`\n\n\u003ch3\u003e\u003cins\u003eHow the report look like?\u003c/h3\u003e\n\n\u003cins\u003eAllure Report\n![image](https://github.com/lynix28/ios-mobileui-appium-wdio-example/assets/102797648/e56c37f0-e265-490b-b062-a54334501278)\n\n\u003cins\u003eSauceLabs Build \u0026 Test Status\n![image](https://github.com/lynix28/ios-mobileui-appium-wdio-example/assets/102797648/cc8cf331-91cd-4d44-89f8-80204cfb3675)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flynix28%2Fios-mobileui-appium-wdio-example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flynix28%2Fios-mobileui-appium-wdio-example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flynix28%2Fios-mobileui-appium-wdio-example/lists"}