allure-framework / allure-framework/allure-python

Resolving 'fullName' Field Issue in Allure-Pytest: A Local Solution and Call for Official Adjustment

Offen
#751 0 Kommentare 2 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Python
Sterne
814
Forks
260
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Hello, currently I am using Allure TestOps to manage my automated tests, and after much searching, I finally found a small issue that was not noticeable before in allure-pytest. The problem is that when I run tests with examples using (@pytest.mark.parametrize) with more than one test, at the end of the execution, the result.json file is filled with the "fullName" field containing only the test name without the examples appended. In other words, when I add the execution results to TestOps, it considers it as a single test instead of the multiple tests I have in the parametrize. Here's an example below:

![image](https://github.com/allure-framework/allure-python/assets/58951154/10e65dca-6f50-48ef-8b2c-51aaf4d2ded6)

After cloning the allure-python repository, I was able to identify that in the utils.py file of allure-pytest, on line 122, the method "allure_full_name" is located. What I did to test it locally was to modify the line that previously read:

test = item.originalname if isinstance(item, pytest.Function) else item.name.split("[")[0]

to:
test = item.name

After reinstalling the library locally, the issue was resolved as evidenced below:

![image](https://github.com/allure-framework/allure-python/assets/58951154/c271343c-eb72-4753-8d0f-0b50ae68b917)

I didn't encounter any functionality issues with allure-pytest after making this local modification. Can you make this adjustment officially in the library?

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginnen Sie in allure-pytest/utils.py bei der Methode allure_full_name um Zeile 122 und reproduzieren Sie das Problem mit einem pytest.mark.parametrize-Test mit mehreren Beispielen. Untersuchen Sie die generierte result.json und verifizieren Sie, dass jedes parametrisierte Ergebnis einen eindeutigen fullName hat, damit TestOps die Tests separat erkennt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
testing
Issue-Typ
Bug
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Veraltet
Klarheit
Klar beschrieben
Anfängerfreundlichkeit
55/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.