magento / magento/magento2-functional-testing-framework
Upgrading Magento 2 functional testing framework above 4.2.1 breaks test because of Namespace Changes in allure-framework
- Dominant language
- PHP
- Stars
- 154
- Forks
- 134
- PR merge metrics
- No merged PRs in 30d
Description
When trying to run tests in newer version than 4.2.1 it gets an exception that it cant find AllureCodeception class.
Referenced here with Namespace Yandex\Allure
https://github.com/magento/magento2-functional-testing-framework/blob/develop/src/Magento/FunctionalTestingFramework/Allure/Adapter/MagentoAllureAdapter.php#L20
And in composer.lock Namespace Qameta\Allure\Codeception
https://github.com/magento/magento2-functional-testing-framework/blob/develop/composer.lock#L39
Which is references to allure-phpcommons Yandex\Allure Namespace
https://github.com/magento/magento2-functional-testing-framework/blob/develop/composer.lock#L111
But if we check The repo at allure-codeception The AllureCodeception is now declared Final class
https://github.com/allure-framework/allure-codeception/blob/main/src/AllureCodeception.php#L38
### Preconditions
Not Relevant
### Steps to reproduce
Update Magento2 Functional Testing Framework above 4.2.1
Then it updates the dependency to allure-framework/allure-codeception which breaks because of namespace changes.
### Expected result
Test to be executed
### Actual result
Because of Namespace changes in allure-codeception an exception is thrown when MagentoAllureAdapter extending not existing class.
If you lock the testing framework to version 4.2.1 and not ^4.2.1 and run composer update everything works again.
Contributor guide
Research direction
Start with src/Magento/FunctionalTestingFramework/Allure/Adapter/MagentoAllureAdapter.php and the allure-related entries in composer.lock, then compare them with the newer allure-codeception namespace and class declaration referenced in the issue. Done means the framework can update beyond 4.2.1 and execute its functional tests without the missing AllureCodeception exception.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- testing-qa, tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100