const assert = require('assert')
const {addStep} = require('@wdio/allure-reporter').default
const url = 'http://json.org';
describe('JSON.org page', async () => {
before(async () => {
await browser.enablePerformanceAudits()
})
it('Lighthouse Performance score', async () => {
await browser.url(url)
let metrics = browser.getMetrics()
assert.ok((await metrics).speedIndex < 2000)
let score = await browser.getPerformanceScore()
if (score <= .80) {
throw new Error(score);
}
addStep('Lighthouse Performance score ' + score);
addStep('Metrics - ' + metrics)
})
after(async () => {
await browser.disablePerformanceAudits()
})
})
addAttachment('name', metrics)
но в allure name
{}
Всем привет!
Добавляю в тест аннотацию "@Step", возникает ошибка:
org.gradle.api.internal.tasks.testing.TestSuiteExecutionException: Could not complete execution for Gradle Test Executor 14.
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:63)
at java.base@11.0.9/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Caused by: org.junit.platform.commons.JUnitException: ClassSelector [className = 'com.tests.CreatePlanTemplateTest'] resolution failed
at org.junit.platform.launcher.listeners.discovery.AbortOnFailureLauncherDiscoveryListener.selectorProcessed(AbortOnFailureLauncherDiscoveryListener.java:39)
Caused by: java.lang.VerifyError: Expecting a stackmap frame at branch target 164
Exception Details:
Location:
com/tests/CreatePlanTemplateTest.addRule()V @9: invokestatic
Reason:
Expected stackmap frame at this location.
Step убираю - тест проходит
Подскажите, пожалуйста, как можно побороть проблему?
Добавление в build.gradle
test {
jvmArgs "-noverify"
}
не помогло
allureVersion ='2.13.6'
тесты запускаю в идее
Всем привет, столкнулся с проблемой установки allure в винде10.
Установил scoope, установил allure .
При проверке версии в каталоге с allure - все четко:
C:\Users\Антон\scoop\apps\allure\2.19.0\bin>allure --version
2.19.0
Однако, при чеке из корня
C:\Users\Антон>allure --version
Системе не удается найти указанный путь.
И соответственно отчеты не собрать, как исправить?
allure.bat запускал
Всем привет! Я впервые настраиваю Allure в WDIO.
Столкнулся с ошибкой: ERROR @wdio/cli:utils: Error in onCompleteHook: Error: Could not generate Allure report
Сам лог:
Generating report to temp directory...
--clean does not exist
Report successfully generated to C:\Users\Super\AppData\Local\Temp\5249124290623180845\allure-report
Starting web server...
2022-11-26 22:21:22.265:INFO::main: Logging initialized @4033ms to org.eclipse.jetty.util.log.StdErrLog
Server started at http://172.30.48.1:58505/. Press <Ctrl+C> to exit
2022-11-26T21:21:28.189Z ERROR @wdio/cli:utils: Error in onCompleteHook: Error: Could not generate Allure report
at Object.onComplete (D:\Study\QA Testing\WebdriverProjects\webapp-v0-browserstack\wdio.conf.ts:265:23)
at D:\Study\QA Testing\WebdriverProjects\webapp-v0-browserstack\node_modules\@wdio\cli\build\utils.js:99:19
at Array.map (<anonymous>)
at runOnCompleteHook (D:\Study\QA Testing\WebdriverProjects\webapp-v0-browserstack\node_modules\@wdio\cli\build\utils.js:97:39) at Launcher.run (D:\Study\QA Testing\WebdriverProjects\webapp-v0-browserstack\node_modules\@wdio\cli\build\launcher.js:96:75)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
После этой ошибки Allure генерится и даже запускается страница с реальным отчетом.
Для wdio.conf.ts использую такой сниппет:
onComplete: function () {
const reportError = new Error('Could not generate Allure report')
const generation = allure(['serve', '/allure-results', '--clean']) // with 'generate' doesn't work
return new Promise<void>((resolve, reject) => {
const generationTimeout = setTimeout(
() => reject(reportError),
10000)
generation.on('exit', function (exitCode) {
clearTimeout(generationTimeout)
if (exitCode !== 0) {
return reject(reportError)
}
console.log('Allure report successfully generated')
resolve()
})
})
},
Еще смущает строка "Generating report to temp directory..." Так и должно быть в "temp"?
Заранее спасибо)
Привет
Подскажите, есть ли интеграция Allure with Azure DevOps pipeline?
Не много удалось нагуглить
“Allure Test Reports” extension (https://marketplace.visualstudio.com/items?itemName=Molecula.allure-test-reports ) не прошел security check в компании и я не могу его добавить (по коментам он еще почему-то не работает у многих)
Есть интеграция ADO с MS Azure, я видел решения с выгрузкой репорта в бакет, думаю этот вариант пробовать
сам спросил, сам отвечу.
можно добавить такую функцию:
func name(_ value: String) {
XCTContext.runActivity(named: "allure.name:\(value)", block: { _ in })
}
xcresults распарсит эту метку и даст тесту соответствующее название
насчёт дублирующихся suite-ов в случае добавления своих, похоже, решения нет. форкнул тулзу и убрал лишний шаг
Всем привет. пытаюсь использовать allure-jasmine.
Пробую делать скриншоты после каждого теста, в итоге получаю скриншоты, но в xml файле array attachments пустой.
Мой код:
let JasmineAllureReporter = require("allure-jasmine").JasmineAllureReporter;
const reporter = new JasmineAllureReporter({
resultsDir: "allure-results",
});
jasmine.getEnv().addReporter(reporter);
jasmine.getEnv().afterEach(function(done){
driver.takeScreenshot().then(function (png) {
let buf = new Buffer(png, 'base64');
reporter.writeAttachment(buf, 'image/png');
done();
})
});
Подскажите, как правильно делать скриншоты? Еще лучше, как делать скриншоты только после упавших тестов?
Заранее спасибо!