https://github.com/tvarchive/optimusTemplate
This is a cucumber jvm implementation template using the optimus mobile automation framework. If you like it, star it, help spread the word.
https://github.com/tvarchive/optimusTemplate
android appium optimus optimus-framework
Last synced: 3 months ago
JSON representation
This is a cucumber jvm implementation template using the optimus mobile automation framework. If you like it, star it, help spread the word.
- Host: GitHub
- URL: https://github.com/tvarchive/optimusTemplate
- Owner: tvarchive
- Created: 2017-01-05T11:22:35.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2019-09-12T08:25:16.000Z (about 6 years ago)
- Last Synced: 2024-04-12T15:07:38.833Z (over 1 year ago)
- Topics: android, appium, optimus, optimus-framework
- Language: Objective-C
- Homepage: http://docs.testvagrant.com
- Size: 98.1 MB
- Stars: 66
- Watchers: 22
- Forks: 23
- Open Issues: 10
-
Metadata Files:
- Readme: Readme.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
# Optimus Template [](https://badge.fury.io/js/optimus-cli) [](https://gitter.im/optimus_support/optimus)
Optimus Template is the native framework for Optimus, designed to help you
to get started with your tests in the swiftest time possible. Read more about Optimus on our [wiki](https://github.com/testvagrant/optimusTemplate/wiki), for videos watch [here](https://www.youtube.com/channel/UCy1OVZVChPLmnPySRhuaSrw)### Pre-requisites
* [HomeBrew](https://brew.sh/), [XCode 8.2 or above](https://developer.apple.com/xcode/) - Mac
* [LinuxBrew](http://linuxbrew.sh/) - Linux
* [Chocolatey](https://chocolatey.org/) - Windows### Getting started with Optimus
* **Step 1**: Install the optimus-cli utilty
```
npm install -g optimus-cli
```* **Step 2**: Verify if your system is ready for using Optimus
```
$ optimus doctor
```* **Step 3**: Install if `optimus doctor` reported any missing dependencies.
```
$ optimus setup
```
* **Step 4a**: (Only for macOS) Install Xcode manually from App store or via [Downloads page](https://developer.apple.com/download/) and move it to Applications.* **Step 4b**: (Only for macOS) If you have multiple versions of Xcode installed on your machine then use this command in your in terminal:
`sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer` where `xcode` is the name of Xcode installed on your machine or the Xcode which you want to use with optimus.* **Step 5**: Configure Mongodb
If you have installed mongodb using optimus doctor command. You will have to manually create /Data/db folder.Here is how you do it in terminal
```
sudo mkdir -p /data/db
sudo chmod 777 /data/db
```
try running mongod command in your terminal now, mongo instance should be up and running on port 27017
* **Step 6**: To create a new Optimus project.```
$ optimus new
```
* **Step 7**: Once the project is created you can import the project into your favourite IDE. However we love [IntelliJ](https://github.com/testvagrant/optimusTemplate/wiki/Import-Optimus-Project---Intellij) though.### Import Project
* [IntelliJ](https://github.com/testvagrant/optimusTemplate/wiki/Import-Optimus-project-using-Intellij)
* [Eclipse](https://github.com/testvagrant/optimusTemplate/wiki/Import-Optimus-project-using-Eclipse)### Run
Optimus runs your tests in parallel by default. Just connect the devices you need coverage on and choose between one of the following modes to trigger your test run
1. `Fragmentation`
2. `Distribution`Suppose you have 5 feature files in your project and 5 devices connected, now in
`Fragmentation`: All 5 features will run on all 5 devices.

`Distributuion`: one feature will run on one device.

Your new OptimusTemplate project gets created with a sample test for an example app `HelloOptimus` you can run your project as shown below.
#### Step 1: Connect devices(Android or IOs) or create an Android Emulator.
#### Step 2: Open your favourite terminal and navigate to the project folder.
#### Step 3: Check for Android Devices or Emulators by running
gradle runFragmentation -DtestFeed=HelloOptimusAndroid -Dtags=@helloOptimus
Note: You will see that HelloOptimus app is launched on all the connected Android Devices and emulators.
#### Step 4: Check for IOS by running
gradle runFragmentation -DtestFeed=HelloOptimusIOS -Dtags=@helloOptimus
Note: You will see that HelloOptimus app is launched on a IPhone6 Simulator.### First test
With optimus you can create tests either by creating custom steps or by using [Generic Steps](https://github.com/testvagrant/optimusTemplate/wiki/Generic-Steps) or a mix of both.
You can learn more about the test which ran on your devices by following our [Android Tutorial](https://github.com/testvagrant/optimusTemplate/wiki/My-First-Android-Test) or [IOS Tutorial](https://github.com/testvagrant/optimusTemplate/wiki/My-First-IOS-Test)### Below are a few sample projects leveraging the power of Optimus framework
* [Swiggy](https://github.com/testvagrant/optimus_SwiggyTests)
* [Kik](https://github.com/testvagrant/optimus_KikTests)
* [Paytm](https://github.com/testvagrant/optimus_PaytmTests)
* [Scripbox](https://github.com/testvagrant/optimus_ScripboxTests)### Contact
Our [FAQ](https://github.com/testvagrant/optimusTemplate/wiki/FAQ) covers most of the common issues. In case the issue you are facing is not available, you can reach out to us at optimus@testvagrant.com