Using a Plug-in
Concordia Compiler uses plug-ins for:
    1.
    setting the testing environment up;
    2.
    generating and executing test scripts;
    3.
    converting and reporting test results.
Every plug-in can generate test scripts for a different testing framework or programming language.

Plug-ins

Name (concordialang-...)
Target platform
Needs Java?
RTS*
web
No
No
web
Yes, Java 8+
Yes
Android, iOS, Windows
It depends**
Yes
Notes:
    (*) RTS means "Requires a Testing Server", that is, if it requires a testing server to run the test scripts.
    (**) Appium requires Java for testing web-based mobile applications or using the Android SDK.
    codeceptjs-testcafe uses the frameworks CodeceptJS and TestCafé, and works with probably any browser.
    codeceptjs-playwright uses the frameworks CodeceptJS and Playwright,
    requires Node 10.14 or above, and works with Chromium, Firefox, and Safari.
    codeceptjs-webdriverio uses the frameworks CodeceptJS and WebDriverIO, and works with Chrome, Firefox, IE, and Edge.
    codeceptjs-appium uses the frameworks CodeceptJS and Appium, and requires some additional configuration to work.
    codeceptjs-testcafe and codeceptjs-playwright are only available for Concordia Compiler 2 or above.

Installation

Use --plugin-install plus the plug-in name. Example:
1
npx concordia --plugin-install codeceptjs-testcafe
Copied!
You can also use NPM for installing a plug-in. In this case, you must prefix the plug-in name withconcordialang- . Example: npm install -D concordialang-codeceptjs-testcafe.

Upgrade

Just uninstall the plug-in and then install it again. Example:
1
npx concordia --plugin-uninstall codeceptjs-playwright
2
npx concordia --plugin-install codeceptjs-playwright
Copied!

How to use a plug-in

Concordia has the following plug-in commands:
    plugin-install to install a plug-in
    plugin-uninstallto uninstall a plug-in
    plugin-serve to start a testing server using the plug-in
    plugin to use a plug-in
    plugin-info to show information about a plug-in
    plugin-list to list installed plug-ins
All but the latter command (plugin-list) require a plug-in name.
👉 Whether you have a configuration file with the property plugin defined, you can omit the plugin name from a command. Example:
.concordiarc
1
{
2
"plugin": "codeceptjs-playwright"
3
}
4
Copied!

Commonly used commands

Starting a testing server

Some plug-ins (WebDriverIO, Appium) require a testing server to execute test scripts. A testing server controls a browser or an emulator during tests.
We recommend to open a new terminal/console and then start the testing server:
1
concordia --plugin-serve <plugin>
Copied!
Naturally, you must replace <plugin> with the plugin name.
The testing server will remain open. To stop it later, type Ctrl + C.

Generating and executing test scripts

Whether your plug-in needs a testing server, start it beforehand.
1
concordia --plugin <plugin>
Copied!
If you have a configuration file with the property plugin defined, you can just type concordia.

Generating test scripts without executing them

You can use --no-run to avoid running test scripts and use --no-result to avoid reading the last report with test results. Test scripts will be generated but not executed.
1
concordia --plugin <plugin> --no-run --no-result
Copied!

Executing existing test scripts (without generating them)

You can use --no-script to avoid generating test scripts. Only existing test scripts will be executed.
1
concordia --plugin <plugin> --no-script
Copied!

See also

Last modified 3mo ago