1.0.5 • Published 2 years ago
codeceptjs-qaseio v1.0.5
Qase TSM
Qaseio integration with CodeceptJS. The test run is created automatically after the execution.
Requirement
To use this custom plugin
npm i codeceptjs-qaseio --save
Note:
- You should include the test case id to make it works, otherwise, this plugin has no clue which case id to be added to test run on Qaseio.
- To avoid creating multiple testruns, add
--suites
torun-workers
command
npx codeceptjs run-workers 3 --suites
An example:
...
Scenario('Search function is displayed @C12345', ({I, homePage}) => {
I.seeElement(homePage.searchTextbox);
I.seeElement(homePage.searchButton);
});
...
Data driven tests
If you want to have different Data-driven test cases with different IDs in Testrail for each iteration of the test you will need to populate the Data object with your a tag. This works because CodeceptJS extracts tags from test names, and data for Data-driven tests is populated in the test name.
An example:
...
let accounts = new DataTable(['testRailTag', 'user', 'password']);
accounts.add(['@C12345', 'davert', '123456']); // add a tag for each user along with their test data
accounts.add(['@C45678', 'admin', '123456']);
Data(accounts).Scenario('Test Login', ({ I, current }) => {
I.fillField('Username', current.login); // current is reserved!
I.fillField('Password', current.password);
I.click('Sign In');
I.see('Welcome '+ current.login);
});
...
A Gherkin example:
@smoke
@12345
Scenario: Search function is displayed
Given I am on the home page
Then I see search textbox
And I see search button
Note:
TestRail tag in Examples from Scenario Outline available from version 1.7.4
and above
@someTag
Scenario Outline: Fill some field
When I fill some field by text <text>
Then I see text <text>
Examples:
| testRailTag | text |
| @C1234 | someText1 |
| @C1235 | someText2 |
Configuration
Add this plugin to config file:
...
plugins: {
qase: {
require: "codeceptjs-qaseio",
apiKey: "your api token",
projectName: process.env.QASE_PROJECT_NAME,
enabled: process.env.QASE_REPORT || false,
runId: process.env.TEST_RUN_ID
}
}
...