This is an official Codeception adapter for Allure Framework.
The main purpose of this adapter is to accumulate information about your tests and write it out to a set of XML files: one for each test class. This adapter only generates XML files containing information about tests. See wiki section on how to generate report.
Example project is located at: https://github.com/allure-examples/allure-codeception-example
In order to use this adapter you need to add a new dependency to your composer.json file:
{ "require": { "php": "^8", "allure-framework/allure-codeception": "^2" } } To enable this adapter in Codeception tests simply put it in "enabled" extensions section of codeception.yml:
extensions: enabled: - Qameta\Allure\Codeception\AllureCodeception config: Qameta\Allure\Codeception\AllureCodeception: outputDirectory: allure-results linkTemplates: issue: https://example.org/issues/%s setupHook: My\SetupHookoutputDirectory is used to store Allure results and will be calculated relatively to Codeception output directory (also known as paths: log in codeception.yml) unless you specify an absolute path. You can traverse up using .. as usual. outputDirectory defaults to allure-results.
linkTemplates is used to process links and generate URLs for them. You can put here an sprintf()-like template or a name of class to be constructed; such class must implement Qameta\Allure\Setup\LinkTemplateInterface.
setupHook allows to execute some bootstrapping code during initialization. You can put here a name of the class that implements magic __invoke() method - and that method will be called. For example, it can be used to ignore unnecessary docblock annotations:
<?php namespace My; use Doctrine\Common\Annotations\AnnotationReader; class SetupHook { public function __invoke(): void { AnnotationReader::addGlobalIgnoredName('annotationToIgnore'); } }To generate report from your favourite terminal, install allure-cli and run following command (assuming you're in project root and using default configuration):
allure generate -o ./build/allure-report ./build/allure-resultsReport will be generated in build/allure-report.
See respective PHPUnit section.