concordialang-codeceptjs-appium v2.4.1
concordialang-codeceptjs-appium
🔌 Concordia Compiler Plug-in for CodeceptJS with Appium
Generates and executes test scripts for mobile or desktop applications. Uses CodeceptJS with Appium.
Installation
Before installing:
- Make sure you have Concordia
1.0.0
or above. - Go to your applications' root folder.
Note: If you want to test a web-based mobile or desktop application, you will have to install Java 8 or above, since Appium will use WebDriverIO, which requires Java.
Installation via Concordia:
concordia --plugin-install codeceptjs-appium
Installation via NPM:
npm install --save-dev concordialang-codeceptjs-appium
Optional installation
You can install additional packages when needed, via NPM.
The following database drivers allow you to connect to a certain database type during the test execution:
driver | command to install | note |
---|---|---|
CSV files | npm install --save-dev database-js-csv | |
Excel files | npm install --save-dev database-js-xlsx | |
Firebase | npm install --save-dev database-js-firebase | |
INI files | npm install --save-dev database-js-ini | |
JSON files | npm install --save-dev database-js-json | |
MySQL | npm install --save-dev database-js-mysql | |
MS Access | npm install --save-dev database-js-adodb | Windows only |
MS SQL Server | npm install --save-dev database-js-mssql | |
PostgreSQL | npm install --save-dev database-js-postgres | |
SQLite | npm install --save-dev database-js-sqlite |
You may also like to install
- Appium Doctor, if you are testing a mobile application
Attempts to diagnose and fix common Node, iOS and Android configuration issues before starting Appium.
npm install -g appium-doctor
- Appium Desktop, if you are testing a desktop application. It has its own installer
Appium Server and Inspector in Desktop GUIs for Mac, Windows, and Linux
Environment Setup
Unfortunately, the setup process for testing mobile or desktop applications with Appium requires some manual effort.
Appium provides automation for a particular platform through a driver. Every driver comes with its own setup requirements - usually the same ones for app development. For example, to automate the tests of an Android app, you will need to install Android SDK. Likewise, an iOS app will need iOS SDK.
Appium Drivers:
- Android apps with UiAutomator2 Driver
- Android apps with Expresso Driver (beta)
- iOS apps or tvOS apps with XCUITest Driver
- Windows Desktop apps with Windows Driver
- Mac Desktop apps with Mac Driver
Therefore, please install the driver and the needed requirements in order to test your application.
Execution
Execute it with the Concordia Compiler. Example:
concordia --plugin codeceptjs-appium
Generated configuration file
The plug-in generates a basic configuration file for you.
Versions 0.x and 1.x
Versions 0.x
and 1.x
generate the file codecept.json
with the following content:
{
"tests": "test/**/*.js",
"output": "output",
"helpers": {
"Appium": {
"platform": "Android",
"app": "http://localhost",
"device": "emulator"
},
"DbHelper": {
"require": "./node_modules/codeceptjs-dbhelper"
},
"CmdHelper": {
"require": "./node_modules/codeceptjs-cmdhelper"
}
},
"bootstrap": false,
"mocha": {
"reporterOptions": {
"codeceptjs-cli-reporter": {
"stdout": "-",
"options": {
"steps": true
}
},
"json": {
"stdout": "output/output.json"
}
}
}
}
The above file is compatible with CodeceptJS 1.2.1
, and probably any version in 1.x
.
Documentation
Packages installed by version 1.x
- No packages are installed globally.
- No changes to
package.json
. - All the same dependencies as version
0.x
.
Packages installed by version 0.x
Installed globally:
package | version | reason |
---|---|---|
codeceptjs | 1.2.1 | Allow executing CodeceptJS in the CLI without NPX or via node_modules |
appium | latest | Needed test server |
Installed in package.json
's devDependencies
:
package | version | reason |
---|---|---|
codeceptjs | 1.2.1 | Needed framework |
mocha | 5.2.0 | Generate JSON reports read by the plug-in |
mocha-multi | 1.0.1 | Allow to generate multiple reports simultaneously, such as the JSON's and the CLI's |
codeceptjs-cmdhelper | latest | Execute Concordia commands in the CLI |
codeceptjs-dbhelper | latest | Execute Concordia commands in a database |
database-js | latest | Access databases during tests, e.g., to setup them for the test |
database-js-json | latest | Access JSON files as databases |
Integration with CodeceptJS
Documentation available in concordialang-codeceptjs-core.
See Also
concordialang-codeceptjs-webdriverio: plugin for CodeceptJS with WebDriverIO.
- Concordia
License
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago