அல்லூர் அறிக்கையாள ர்
A WebdriverIO reporter plugin to create Allure Test Reports.

நிறுவல்
@wdio/allure-reporter ஐ உங்கள் package.json இல் devDependency ஆக சேர்ப்பதே எளிதான வழி.
{
"devDependencies": {
"@wdio/allure-reporter": "^7.0.0"
}
}
நீங்கள் இதனை எளிதாக செய்யலாம்:
npm install @wdio/allure-reporter --save-dev
கட்டமைப்பு
உங்கள் wdio.conf.js கோப்பில் வெளியீட்டு அடைவை கட்டமைக்கவும்:
export const config = {
// ...
reporters: [['allure', {
outputDir: 'allure-results',
disableWebdriverStepsReporting: true,
disableWebdriverScreenshotsReporting: true,
}]],
// ...
}
outputDirஇயல்பாக./allure-resultsஎன அமைக்கப்பட்டுள்ளது. சோதனை ஓட்டம் முடிந்த பிறகு, இந்த அடைவில் ஒவ்வொரு ஸ்பெக்கிற்கும்.xmlகோப்பு மற்றும் பல.txtமற்றும்.pngகோப்புகள் மற்றும் இணைப்புகள் உருவாக்கப்பட்டிருப்பதைக் காணலாம்.disableWebdriverStepsReporting- விருப்ப அளவுருவாகும் (இயல்பாகfalse), அறிக்கையாளருக்கு தனிப்பயன் படிகளை மட்டும் பதிவுசெய்ய.issueLinkTemplate- விருப்ப அளவுரு, சிக்கல் இணைப்பு முறையை குறிப்பிட. அறிக்கையாளர்addIssue(value)அழைப்பு அளவுருவில் குறிப்பிடப்பட்ட மதிப்புடன்{}இடத்தை மாற்றுவார். Cucumber பயன்படுத்தப்பட்டு,issueகுறிச்சொல் எந்த நிலையிலும் அமைக்கப்பட்டிருந்தால் அதே தர்க்கம் பயன்படுத்தப்படும், அது அறிக்கையில் இணைப்பாக மாற்றப்படும். அளவுரு மதிப்பு உதாரணம்:https://example.org/issue/{}tmsLinkTemplate- விருப்ப அளவுரு, TMS (சோதனை மேலாண்மை அமைப்பு) இணைப்பு முறையை குறிப்பிட. அறிக்கையாளர்addTestId(value)அழைப்பு அளவுருவில் குறிப்பிடப்பட்ட மதிப்புடன்{}இடத்தை மாற்றுவார். Cucumber பயன்படுத்தப்பட்டு,testIdகுறிச்சொல் எந்த நிலையிலும் அமைக்கப்பட்டிருந்தால் அதே தர்க்கம் பயன்படுத்தப்படும், அது அறிக்கையில் இணைப்பாக மாற்றப்படும். அளவுரு மதிப்பு உதாரணம்:https://example.org/tms/{}disableWebdriverScreenshotsReporting- விருப்ப அளவுரு (இயல்பாகfalse), திரைப்பிடிப்புகளை அறிக்கையாளருக்கு இணைக்காமல் இருக்க.useCucumberStepReporter- விருப்ப அளவுரு (இயல்பாகfalse), cucumber பயன்படுத்தும்போது அறிக்கை படிநிலை அமைப்பை மாற்ற true என அமைக்கவும். உங்களுக்காக முயற்சித்து பாருங்கள்.disableMochaHooks- விருப்ப அளவுரு (இயல்பாகfalse),before/afterஸ்டாக்ட்ரேஸ்/திரைப்பிடிப்பு/முடிவு கொக்குகளை அல்லூர் அறிக்கையாளரில் பெறாமல் இருக்க true என அமைக்கவும்.addConsoleLogs- விருப்ப அளவுரு (இயல்பாகfalse), கன்சோல் பதிவுகளை படியிலிருந்து அறிக்கையாளருக்கு இணைக்க true என அமைக்கவும்.reportedEnvironmentVars(வகை:Record<string, string>) - அறிக்கையில் சூழல் மாறிகளைக் காட்ட இந்த விருப்பத்தை அமைக்கவும். இதை அமைப்பது உண்மையான சூழல் மாறிகளை மாற்றாது என்பதை கவனிக்கவும்.
ஆதரிக்கப்படும் அல்லூர் API
addLabel(name, value)- சோதனைக்கு தனிப்பயன் லேபிளை ஒதுக்குaddFeature(featureName)– சோதனைக்கு அம்சங்களை ஒதுக்குaddStory(storyName)– சோதனைக்கு பயனர் கதையை ஒதுக்குaddSeverity(value)– சோதனைக்கு தீவிரத்தை ஒதுக்கு, இந்த மதிப்புகளில் ஒன்றை ஏற்றுக்கொள்கிறது: blocker, critical, normal, minor, trivialaddTag(value)– சோதனைக்கு டேக் லேபிளை ஒதுக்குaddEpic(value)– சோதனைக்கு எபிக் லேபிளை ஒதுக்குaddOwner(value)– சோதனைக்கு உரிமையாளர் லேபிளை ஒதுக்குaddSuite(value)– சோதனைக்கு ஒரு சூட் லேபிளை ஒதுக்குaddSubSuite(value)– சோதனைக்கு துணை சூட் லேபிளை ஒதுக்குaddParentSuite(value)– சோதனைக்கு பெற்றோர் சூட் லேபிளை ஒதுக்குaddIssue(value)– சோதனைக்கு சிக்கல் ஐடியை ஒதுக்குaddAllureId(value)– சோதனைக்கு அல்லூர் சோதனை ஆப்ஸ் ஐடி லேபிளை ஒதுக்குaddTestId(value)– சோதனைக்கு TMS சோதனை ஐடியை ஒதுக்கு- ~~
addEnvironment(name, value)~~ – இனி வேலை செய்யாத ஒரு காலாவதியான செயல்பாடு. அதற்கு பதிலாகreportedEnvironmentVarsபயன்படுத்தவும் addAttachment(name, content, [type])– சோதனைக்கு இணைப்பை சேமி.name(String) - இணைப்பு பெயர்.content– இணைப்பு உள்ளடக்கம்.type(String, விருப்பமானது) – இணைப்பு MIME-வகை, இயல்பாகtext/plain
addArgument(name, value)- சோதனைக்கு கூடுதல் வாதத்தை சேர்addDescription(description, [type])– சோதனைக்கு விளக்கத்தை சேர்.description(String) - சோதனையின் விளக்கம்.type(String, விருப்பமானது) – விளக்க வகை, இயல்பாகtext. மதிப்புகள் ['text', 'html','markdown']
addStep(title, [{content, name = 'attachment'}], [status])- சோதனைக்கு படியை சேர்.title(String) - படியின் பெயர்.content(String, விருப்பமானது) - படி இணைப்புname(String, விருப்பமானது) - படி இணைப்பு பெயர், இயல்பாகattachment.status(String, விருப்பமானது) - படி நிலை, இயல்பாகpassed. "failed", "passed" அல்லது "broken" என இருக்க வேண்டும்
startStep(title)- ஒரு படியுடன் தொடங்குtitle(String) - படியின் பெயர்.
endStep(status)- ஒரு படியுடன் முடிவுstatus(String, விருப்பமானது) - படி நிலை, இயல்பாகpassed. "failed", "passed" அல்லது "broken" என இருக்க வேண்டும்
step(name, body)- உள்ளே உள்ளடக்க செயல்பாட்டுடன் படி தொடங்குகிறது. முடிவற்ற படிநிலையுடன் படிகளை உருவாக்க அனுமதிக்கிறதுbody(Function) - படி உடல் async செயல்பாடு
பயன்பாடு
Allure Api ஐ பின்வருமாறு அணுகலாம்:
CJS
const allureReporter = require('@wdio/allure-reporter').default
ESM
import allureReporter from '@wdio/allure-reporter'
Mocha உதாரணம்
describe('Suite', () => {
it('Case', () => {
allureReporter.addFeature('Feature')
})
})
Cucumber
அடிப்படை Cucumber உதாரணம்:
Given('I include feature and story name', () => {
allureReporter.addFeature('Feature_name');
allureReporter.addStory('Story_name');
})
தனிப்பயன் படிகள்
step முறை படிகளை கையாள்வதை எளிதாக்குகிறது ஏனெனில் ஒவ்வொரு படியும் உள்ளே எந்த உள்ளடக்கத்துடனும் ஒரு async செயல்பாடாக வழங்கப்படுகிறது.
செயல்பாட்டின் முதல் அளவுரு தற்போதைய படி, அதில் அல்லூர் API முறைகளில் பெரும்பாலானவை உள்ளன (அதாவது label, epic, attach போன்றவை):
allureReporter.step('my step name', async (s1) => {
s1.label('foo', 'bar')
await s1.step('my child step name', async (s2) => {
// you can add any combination of steps in the body function
})
})
Cucumber குறிச்சொற்கள்
சிறப்பு பெயர்களுடன் (issue மற்றும் testId) Cucumber குறிச்சொற்கள் இணைப்புகளாக மாற்றப்படுகின்றன (அதற்கான இணைப்பு வார்ப்புருக்கள் முன்னரே கட்டமைக்கப்பட வேண்டும்):
@issue=BUG-1
@testId=TST-2
Feature: This is a feature with global tags that will be converted to Allure links
@issue=BUG-3
@testId=TST-4
Scenario: This is a scenario with tags that will be converted to Allure links
Given I do something
சிறப்பு பெயர்களுடன் (feature) Cucumber குறிச்சொற்கள் அல்லூர் லேபிள்களுக்கு வரைபடமாக்கப்படுகின்றன:
Feature: Test user role
@feature=login
Scenario: Login
Given I test login
அறிக்கையை காட்டுதல்
முடிவுகள் அல்லூர் வழங்கும் அறிக்கை கருவிகள் ஏதேனும் ஒன்றால் பயன்படுத்தப்படலாம். உதாரணமாக:
கட்டளை-வரி
Allure கட்டளை-வரி கருவியை நிறுவி, முடிவுகள் அடைவை செயலாக்கவும்:
allure generate [allure_output_dir] && allure open
இது ஒரு அறிக்கையை உருவாக்கும் (இயல்பாக ./allure-report இல்), மற்றும் அதை உங்கள் உலாவியில் திறக்கும்.
தானியங்கி அறிக்கை உருவாக்கம்
Allure கட்டளை வரி கருவியை நிரலாக்க முறையில் பயன்படுத்தி அறிக்கையை தானாகவே உருவாக்கலாம். அதற்கு உங்கள் திட்டத்தில் தொகுப்பை நிறுவவும்:
npm i allure-commandline
பின்னர் உங்கள் onComplete கொக்கை சேர்க்கவும் அல்லது விரிவுபடுத்தவும் அல்லது இதற்காக தனிப்பயன் சேவை உருவாக்கவும்:
// wdio.conf.js
const allure = require('allure-commandline')
export const config = {
// ...
onComplete: function() {
const reportError = new Error('Could not generate Allure report')
const generation = allure(['generate', 'allure-results', '--clean'])
return new Promise((resolve, reject) => {
const generationTimeout = setTimeout(
() => reject(reportError),
5000)
generation.on('exit', function(exitCode) {
clearTimeout(generationTimeout)
if (exitCode !== 0) {
return reject(reportError)
}
console.log('Allure report successfully generated')
resolve()
})
})
}
// ...
}
Jenkins
Allure Jenkins plugin ஐ நி றுவி கட்டமைக்கவும்
திரைப்பிடிப்புகளை சேர்த்தல்
திரைப்பிடிப்புகளை Mocha மற்றும் Jasmine க்கான afterTest கொக்கில் அல்லது Cucumber க்கான afterStep கொக்கில் WebDriverIO இன் takeScreenshot செயல்பாட்டைப் பயன்படுத்தி அறிக்கையில் இணைக்கலாம்.
முதலில் அறிக்கையாளர் விருப்பங்களில் disableWebdriverScreenshotsReporting: false என அமைக்கவும், பின் afterStep கொக்கில் சேர்க்கவும்:
Mocha / Jasmine
afterTest: async function(test, context, { error, result, duration, passed, retries }) {
if (error) {
await browser.takeScreenshot();
}
}
Cucumber
afterStep: async function (step, scenario, { error, duration, passed }, context) {
if (error) {
await browser.takeScreenshot();
}
}
மேலே காட்டியுள்ளபடி, இந்த செயல்பாடு அழைக்கப்படும்போது, ஒரு திரைப்பிடிப்பு படம் அல்லூர் அறிக்கையில் இணைக்கப்படும்.