Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
mocha-qtest-mapping-reporter
Advanced tools
Mocha qTest reporter.
Map your test cases to automated tests with tag @qTest[testCaseId]
qTest Structure
Test Suite [testSuiteId]
Test Run -> Test Case [testCaseId]
Test Run -> Test Case [testCaseId]
...
Mocha Test
describe('Component')
describe('Feature')
it('test or test step @qTest[testCaseId]')
Before test execution is started reporter either gets Test Runs of Test Suite or creates empty Test Suite.
Having Test Runs reporter can build mapping like: { testCaseId: testRunId }
Test Run may be created automatically (by default) if Test Run for a Test Case is missing in Test Suite
Assuming test has string like @qTest[123456] in name, reporter uploads mocha test results in the end.
example config file
{
"host": "...", // your qTest host
"bearerToken": "********-****-****-****-************", // can be found in resources
"projectId": "12345", // your project id
"statePassed": "PASS", // can be found in automation settings -> integration*\
"stateFailed": "FAIL", // can be found in automation settings -> integration*
"enableLogs": false, // disables console logging. Default value: true.*
"hideWarning": true, // hides "results won't be published" message. Default value: false.
"hideResultUrl": true // skip printing out of suite url in the end. Default value: false.
}
you can pass options one by one or pass path to json like this:
--reporter-options configFile=config/qTestReporter.json
You can either use existing Test Suite or create new one
QTEST_SUITE_ID
- testSuiteId. Required
QTEST_PARENT_TYPE
- one of root / release / test-cycle / test-suite. Required
QTEST_PARENT_ID
- parent id. Set to 0 if parent is root. Required
QTEST_SUITE_NAME
- Test Suite name. Required
QTEST_BUILD_URL
- url to your build system or any other url. Optional
QTEST_CREATE_TEST_RUNS
- specify if test runs have to be created in qTest or just update existing ones. Optional
Q: What is testCaseId, testRunId, testSuiteId
A: this is object id that can be found in URL. It is not what you see in UI like (TC-XXX, TR-XXX, TS-XXX)
Q: What QTEST_SUITE_ID value should I pass if I want it to be created automatically?
A: Don't pass any value.
You may specify either QTEST_SUITE_ID or combination of QTEST_PARENT_TYPE, QTEST_PARENT_ID, QTEST_SUITE_NAME
Q: Reporter completes successfully but (some) results are missing
A: some test runners (like Cypress) are not waiting for reporter to publish results.
Add one more test in the very end that waits for 5-10 seconds. Also make sure that: your test cases are approved, user has sufficient privileges, test statuses have proper mapping (in automation settings), etc.
Cypress https://github.com/mgrybyk/mocha-qtest-mapping-reporter/tree/master/boilerplates/cypress
FAQs
Map your automated test to qTest Test Case with tag
The npm package mocha-qtest-mapping-reporter receives a total of 1 weekly downloads. As such, mocha-qtest-mapping-reporter popularity was classified as not popular.
We found that mocha-qtest-mapping-reporter demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.