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

Open
#912 2 comments 0 reactions 0 assignees View on GitHub
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.