Skip to content

rafaabc/junit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Framework of automated tests with JUnit, Java, and Maven

Build Quality Gate Status

Framework to test in the unit layer.

To practice this I built a class to calculate the Body Mass Index (BMI) and a test class to test the methods of retrieving a result based on a size and a weight of a person.

I used a data-driven approach to run the test class using a csv file with different data and also a structure of Suites so I can run tests in an optimized way. There are 3 Suites of tests basically. One with Positive scenarios and another with Smoke tests with the most important ones. A third Suite runs all test classes as long as I parameterize them. It is also possible to run the tests with CLI and the results we can view with Allure Report.

Pre-conditions

Tools:

Dependências:

Project Structure

./project
├─ src/
    ├─ main
       └─ java/
          └─ bmi/
             └─ BMI
          └─ categories/
             ├─ Positives
             ├─ Smoke   
    └─ test/
       └─ java/
          └─ bmi/
             ├─ CalculateBMI_CSVTest
             ├─ CategorizedTestsTest
             ├─ Suite_AllTestsTest
             ├─ Suite_PositiveCatergoriesTest             
             └─ Suite_SmokeCatergoriesTest                
       └─ resources/
          └─ data.csv
  • src: main dir
  • main: dir with the base code
  • java: default dir when the project is created
  • bmi: package with base code classes
  • BMI: class with the Body Mass Index logic
  • categories: package with interfaces to support the Suite approach
  • test: package with test classes
  • java: default dir when the project is created
  • bmi: package with test classes
  • CalculateBMI_CSVTest: test class with the data-driven approach that consumes the csv file
  • CategorizedTestsTest: test class with categorized methods that will support Suite classes based on categories
  • Suite_AllTestsTest: test class to parameterize all classes you want to run easily with one click
  • Suite_PositiveCatergoriesTest: test class to parameterize all methods categorized as Positives
  • Suite_SmokeCatergoriesTest: test class to parameterize all methods categorized as Smoke
  • resources: dir with csv file

CLI

Run all test classes through command line:

mvn surfire:test

As soon as the tests are executed, a folder will be created inside the "target" directory, called "surefire-reports".

Report

Open the Allure test report via command line:

allure serve /PATH*

*The path must be changed to the path of the "surefire-reports" folder created in the previous step.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages