allure-framework / allure-js

Allure integrations for JavaScript test frameworks
https://allurereport.org/
Apache License 2.0
226 stars 123 forks source link

Unable to nest test suites with Allure-jest #61

Closed missTam closed 11 months ago

missTam commented 4 years ago

[//]: # ( . Note: for support questions, please use Stackoverflow or Gitter. . This repository's issues are reserved for feature requests and bug reports. . . In case of any problems with Allure Jenkins plugin please use the following repository . to create an issue: https://github.com/jenkinsci/allure-plugin/issues . . Make sure you have a clear name for your issue. The name should start with a capital . letter and no dot is required in the end of the sentence. An example of good issue names: . . - The report is broken in IE11 . - Add an ability to disable default plugins . - Support emoji in test descriptions )

I'm submitting a ...

What is the current behavior?

When I write describe() within another describe() in order to create nested test suites, string from one describe() gets concatenated with string from other describe(), and test suites are displayed all in one level - no nesting.

I am experiencing the same issue with Allure-Jest like the following users:

If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem

please see links above - it is the same issue

What is the expected behavior?

describe() function is used for marking test suites in Allure report. Multiple nested describe() functions produce nested test suites in the report.

What is the motivation / use case for changing the behavior?

Better visibility/ redability of test results in projects of higher complexity;

Please tell us about your environment:

Allure version 2.9.0
Test framework jest@24.9.0
Generate report using npm@6.5.0 (node@11.6.0 on a local host)

Other information

[//]: # ( . e.g. detailed explanation, stacktraces, related issues, suggestions . how to fix, links for us to have more context, eg. Stackoverflow, Gitter etc )

epszaw commented 11 months ago

Seems, it's not actual anymore for the latest version of official allure-jest integration.

The report for the following snippet:

describe("first suite", () => {
  describe("second suite", () => {
    describe("third suite", () => {
      describe("fourth suite", () => {
        describe("fifth suite", () => {
          it("should pass 1", () => {
            expect(true).toBe(true)
          })

          it("should pass 2", () => {
            expect(true).toBe(true)
          })

          it("should pass 3", () => {
            expect(true).toBe(true)
          })
        })
      })
    })
  })
})

Looks like:

image