Skip to content

Upgrading Magento 2 functional testing framework above 4.2.1 breaks test because of Namespace Changes in allure-framework #912

@JesperHerrloff

Description

@JesperHerrloff

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions