Xceptance / neodymium-library

A test automation library based on common other best practice open source libraries. It adds missing functionalities but does not reinvent the wheel. Just glues stuff together nicely and adds some sprinkles.
MIT License
80 stars 11 forks source link

Test suite usage #150

Closed occupant23 closed 4 months ago

occupant23 commented 4 years ago

Test and document how/if the TestSuites approach is supported bey Neodymium. https://github.com/junit-team/junit4/wiki/Aggregating-tests-in-suites

oomelianchuk commented 4 years ago

The approach was tested on the neodymium-example project and the code, structured in this way you can find in the 150-split-tests-into-test-suites branch. As you can see, the Neodymium library allows tests to be aggregated in suites, which can even be parallelized. The parallelization of tests inside the suites is however not possible, which can increase the execution time. While using this approach, you should pay attention to the fact that the tests, included in the suite can still be executed separately. So, if you don’t want to execute the test twice, you should avoid executing the test itself (e.g. by excluding it from the surefire path). Tests can also be included in multiple suites (in the example AddToCartTest is included in the BrowsingTestSuite and OrderTestSuite)

The projection of the test aggregation into allure report is not supported. This also means, that in case, when a test is included in the multiple suites, the results of the test will only be displayed once in the allure report. Here you can see, how allure report for such aggregation look like (no difference to simple allure report)

occupant23 commented 4 years ago

@oomelianchuk Thanks for rechecking.

Follow up task: Update https://github.com/Xceptance/neodymium-library/wiki/JUnit with the rechecked information. Since this is a way to configure the running order of tests classes.

oomelianchuk commented 3 years ago

Documentation added in develop

occupant23 commented 3 years ago

@georgkunze: Please review @oomelianchuk adjustments in the documentation.

occupant23 commented 3 years ago

@georgkunze: Please review @oomelianchuk adjustments in the documentation.

georgkunze commented 3 years ago

@occupant23 Reviewed the Documentation done in the JUnit part. Seems fine to me.