CRMB POS iOS Automation is a repository to hold all Automation Test Script for POS as a Regression Suite
The WebDriverIO version being used is V8 which uses ESNext
for Typescript tsconfig.json
in the module
compilerOptions, hence, it requires the LTS version of Node.js
- WebDriver IO V8 (Selenium /Node.js)
- Typescript
- Jasmine
- Chai
- Allure Reports
- Appium - Mobile server
First, clone the code repository $ git clone https://github.com/ravnhq/crmb-ios-automation.git
and
cd <project_cloned>
After that, open an integrated terminal and execute the NPM Install command:
$ npm i -- to install all required dependencies to run the Automation Framework
First, we need to install Appium globally to be able to run as a server
npm i -g appium@next
npm i -g appium-doctor
After Having that installed, we need to download Appium Inspector Appium Inspector
To run the Test Scripts we need a place to launch the application, so for that we need to launch a simulator on the latest IOS version (iPhone 15 Pro Max)
Once we have all those initial tools up and running, we need to set it up to Launch the CRMB Application
- Preferably, the app location should be on the project root folder at: ./app/crmb.app
Now that we have Appium, XCODE updated + Simulator Running and Appium inspector We can inspect the application for testin purposes
- First, we Launch Appium on port 4724
appium -p 4724
- Then we click on Start Session on Appium inspector to install the application on the device
Once we confirm the application can be inspected, the same configuration applies for the Automation framework (Which is already in place). For this, we do not need Appium inspector, we just need the Simulator Running (iPhone 15 Pro Max on iOS 17.0)
To run the Automation test scripts, open an integrated terminal and type the following command:
$ npm run test:ios -- it will run all Spec files within the Spec array on the wdio.ios.conf.ts file
For visualizing the Automation execution you need to have installed previously Java JDK and being added to the PATH Environment variable to allow the Allure report to be launched.
Once that is installed, you can run the npm run reports
script on the integrated terminal of the project to launch a local server with the Allure report results, after the Test Execution.
- Carthage not being installed - https://formulae.brew.sh/formula/carthage
- Brew not recognized by the command line - Brew not being recognized Look for this answer
- ios Selectors - Class Chains
- ios Selectors - Predicate String