Skip to content
This repository is dedicated to the Indonesia Software Quality Assurance members for online learning material.
Java
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.idea
baseimages
src
OrangeHRMTestNGAllure.iml
README.md
TestNG.xml
allure-report.zip
pom.xml

README.md

DemoOrangeHRMTestNGAllure Test Automation

Features

  • BDD reporting style with TestNG and Allure.
  • Page Object Model and Page Factory in Java
  • Generate Screenshot each test step (available in Allure report)
  • Generate Video on Failed Test (available in Allure report)
  • Visual Regression Testing/Screenshot Comparison with Selenium-Shutterbug, aShot, ImageMagick

Environment :

  • Windows ---> checkout from branch : master
  • MacOS ---> checkout from branch : macOS
  • Ubuntu/Linux ---> checkout from branch : ubuntu

Download OrangeHRM

Note : This repository is using OrangeHRM version 4.0 as System Under Test

Windows Only
https://github.com/orangehrm/orangehrm
or
Mac/Linux/Windows
https://hub.docker.com/r/bitnami/orangehrm/

Precondition

Install Allure :

  • MacOS or Ubuntu/Linux --> brew install allure
https://brew.sh/
  • Windows --> scoop install allure
https://docs.qameta.io/allure/#_installing_a_commandline
https://scoop.sh/

image image

Run the Test Via Command Line

mvn clean test

Create Allure Report

allure generate
allure open

or

allure serve

Report Path

Sample Report

download allure-report.zip

{your_project_path}/allure-report/index.html

image

Demo in Youtube

https://youtu.be/EPd5iCTchuA

DemoOrangeHRMTestNGAllure Code Quality

  • Continuous Inspection with SonarQube in Docker

Docker installation - Windows

https://docs.docker.com/toolbox/toolbox_install_windows/

Docker installation - MacOS

https://docs.docker.com/docker-for-mac/install/

Docker installation - Ubuntu/Linux

https://docs.docker.com/install/linux/docker-ce/ubuntu/

image

Demo in Youtube - Windows

https://youtu.be/MjgUgCN3WMg

Recap

  • Continuous Testing with TestNG/Allure & Continuous Inspection with SonarQube in Docker via Jenkins Continuous Integration Server

Jenkins Scripted Pipeline ---> Windows Environment and for macOS/Ubuntu/Linux Environment ---> change "bat" to be "sh"

node({slave}) {
      stage('Checkout') {git poll: true, branch: branch, credentialsId: {credential_name}, url: {URL of repository}}
  try{
      stage('Orange HRM Test Automation') {
          bat "mvn clean test"
          }
  } finally{
      stage('Allure Report') {
          allure([
                    includeProperties: false,
                    jdk: '',
                    properties: [],
                    reportBuildPolicy: 'ALWAYS',
                    results: [[path: 'allure-results']]])}
      stage('Sonarqube Quality Gate') {
      withSonarQubeEnv('sonarqube') {
       bat "mvn sonar:sonar -Dsonar.login={sonar user id} -Dsonar.password={sonar password} -Dsonar.projectKey={project name} -Dsonar.host.url={sonar URL}"
    }}}}

image

Demo in Youtube - Windows

https://youtu.be/ddq8hXksH_E

References :

You can’t perform that action at this time.