Install Java following the React Native guide: https://reactnative.dev/docs/set-up-your-environment?platform=android
Install Maestro and Flashlight to be able to run the test scripts.
Clone this repository and change into the directory:
git clone git@github.com:EdgeApp/edge-qauto.git
cd edge-qautoRun the setup script:
source qautoThis will prompt you with questions about which test you wish to run. You can run this command anytime to change the choices you made.
Run the test configured by the previous with the command:
qautoThis will run the test and ask you if you want to show the result report.
The default number of tests (iterations) is 8, but you can change this by passing
a number to the qauto command:
qauto 3On macOS, qauto-ios records an Instruments Time Profiler trace while running
the selected Maestro flow on a booted iOS Simulator. It requires Xcode,
Maestro, and a booted simulator.
Configure the test as usual, then run:
source qauto
./qauto-iosBy default, the first booted simulator is used. Set IOS_SIM_UDID to target a
specific booted simulator. Traces and metadata are written to results-ios/.
The results are saved to the results/ directory as a JSON file. You can always
open the results again using:
flashlight report results/<filename>.jsonIf you use extract_flashlight_score.py to extract scores from Flashlight results, you need Python 3 and Playwright:
pip install playwright
python3 -m playwright installThis will install the Playwright Python package and the required browser binaries.
Qauto is pronounced "Kado".
extract_flashlight_score.py: Extracts the average score from a Flashlight results JSON file by generating the HTML report and scraping the score from it.- Usage:
python3 extract_flashlight_score.py <path-to-json>
- Usage: