Import Cucumber BDD Tests
đź“‘ This documentation is taken from open-source project testomatio/check-cucumber
To import tests into Testomatio run check-cucumber
via npx:
Note: replace API_KEY wit key from Testomatio
CLI Options:
-d, --dir
- Directory of the project-c, --codeceptjs
- If it is codeceptjs project use this option
Note : Running this will create Suites with folder and file name as sub suites.
To change the host for receiving data, if you use Testomat.io from domain other than app.testomat.io
set TESTOMATIO_URL
environment variable:
Sample Output
Assign IDs
To set Testomatio IDs for scenarios and features in files run this command with --update-ids
option.
Scenarios should already be imported into Testomatio
If you prever to add Test IDs into scenario titles instead of tags enable
TESTOMATIO_TITLE_IDS=1
environment variable
Disable Detached Tests
If a test from a previous import was not found on next import it is marked as “detached”. This is done to ensure that deleted tests are not staying in Testomatio while deleted in codebase.
To disable this behavior and don’t mark anything on detached on import use --no-detached
option
This option could also be set via environment variable TESTOMATIO_NO_DETACHED=1
.
If you don’t want to pass it each time, create .env file in the root dir of your project with this variable set.
Synchronous Import
By default check-cucumber
doesn’t wait for all tests to be processed. It sends request to Testomatio and exits. To wait for processing to finish use --sync
option.
Please note, that this will take a long time on a large codebase.
Clean Test IDs
If you want to import the synced project as new project, you have to clean the test ids.
To clean up test ids without connecting to Testomatio project use --purge
option:
This method may be unsafe, as it cleans all @S*
and @T*
tags from tests and suites. So if you have a tag like @Test1234
this may also be removed. If you use this option make sure if all the test titles a proper before committing the tests in GIT.
Note: An alias of
--purge
option is--unsafe-clean-ids
.
To clean only test ids set from a specific project use --clean-ids
option instead:
TESTOMATIO is API key for old project.
Import Into a Branch
Tests can be imported into a specific branch if TESTOMATIO_BRANCH
parameter is used.
Branch is matched by its id. If branch was not found, it will be created.
Keep Structure of Source Code
When tests in source code have IDs assigned and those tests are imported, Testomat.io uses current structure in a project to put the tests in. If folders in source code doesn’t match folders in Testomat.io project, existing structure in source code will be ignored. To force using the structure from the source code, use --keep-structure
flag on import:
This may be helpful when you want to align current project with the source code and use the source code as the source of truth for tests.
Delete Empty Suites
If tests were marked with IDs and imported to already created suites in Testomat.io
newly imported suites may become empty. Use --no-empty
option to clean them up after import.
This prevents usage —keep-structure option.
Import Into a Specific Suite
To put all imported tests into a specific suite (folder) pass in TESTOMATIO_PREPEND_DIR
environment variable:
Import Manual BDD Tests From Source Code
If you have manual tests in the repository and want to import them into Testomatio you can use .manual.feature
extension in the feature file. Tests will be imported as well as automated tests and will be marked as manual
in Testomatio. For instance:
License MIT.
Part of Testomat.io