Jest-Atm-Reporter-Functional:
This is a plugin for uploading test execution results in real time (during execution - per test
block) for JEST tests to Adaptavist Test Management tool (Kanoah).
One describe
block is mapped to multiple ATM test (Test case ID
for which can be set using reporter method). Each test
block in describe
will be considered as unique test.
Install:
npm install jest-atm-reporter-functional
npm install dotenv
Environment Variables:
Set following environment variables on your machine:
BASE_URL = baseurl (e.g. --> jira.abcdef.com)
JIRA_USERNAME = username
JIRA_PASSWORD = password
PROJECT_KEY = XYZ
TEST_CYCLE_ID = OPQ
Note:
In case you want to create new TEST_CYCLE_ID
for every run then remove entry for TEST_CYCLE_ID
from environment variable and use the npm module GENERATE-ATM-TEST-CYCLE
(https://www.npmjs.com/package/generate-atm-test-cycle) to generate test cycle at runtime programatically.
Usage:
Set following in package.json for using the jest-atm-reporter-functionnal:
"jest": {
"setupFilesAfterEnv": [
"./node_modules/jest-atm-reporter-functional/src/setup.js"
],
"reporters": [
"jest-atm-reporter-functional"
]
},
How to set value Test case ID
and Test Environment
from test file. Snippet from a sample JEST test below -
beforeAll(async () => {
reporter.setEnvironment('<TestEnvironment>');
});
test('test functionality', async () => {
reporter.setTestCaseID('<TestCaseID>');
});
How to get screenshot of failure or final verification step. This screenshot will be auto uploaded to ATM TC. Snippet from a sample jest-puppeteer test below -
afterEach(async () => {
let name = '<UniqueFileName.jpeg>';
await page.screenshot({ path: name, fullPage: true});
reporter.setScreenshotName(name);
});
Note: reporter
is global.
Features:
-
Creates new test environment in Kanoah(ATM) in case the provided test environment is missing in ATM
-
Supports appropriate result upload for both type of JEST test execution - Sequential
and Parallel
-
Allows addition of metadata information - Test Environment
and Test case ID
per describe
and test
block
-
Uploads test execution results to Kanoah (ATM) with following information -
-
Pass / Fail test in real time (per JEST test
block execution)
-
Uploads the actual time taken for the test to execute
-
Uploads failure reason with Fail tests
-
Uploads failure or final verification screenshot with test
-
Each test result upload displays respective environment information as set using the reporter
method - setEnvironment
(eg. values - <applicationName>_desktop_en
or chrome
)