avighub / test-automation-java-restassured-selenide

1 stars 1 forks source link

WEB UI Test Automation Framework

stars - test-automation-java-restassured-selenide forks - test-automation-java-restassured-selenide License issues - test-automation-java-restassured-selenide
View site - GH Pages GitHub Actions Workflow Status

Tech Stack

Programming Language Java
Build and Library management Maven
WEB automation Library Selenium , Selenide
Assertion Library AssertJ
Test runner Library Junit5
CI/CD Github Actions
Optimize boilerplate code Lombok
Async library Awaitility
Serialization and Deserialization library Jackson
Custom exception handler NoException
Secret manager git-crypt
Test data generator javafaker
Configuration manager owner

Framework features

How to setup ?

  1. Clone repository: git@github.com:avighub/test-automation-java-restassured-selenide.git
  2. Unlock Secret:
    • git-crypt is used to manage secrets in this framework
    • It needs a secret file to unlock the encrypted files such as properties files that contains credentials and urls of the application
    • In general this secrete file should be kept in a secured vault (Not exposed to public) within organization.
    • However since this framework is meant to be publicly accessed, I have added the secret key to a publicly accessible storage so that anyone wants to use this framework may use it for playing around
    • Download the secret file from here
    • Once downloaded, put that file in root directory of the project
    • Install git-crypt in your system , follow the doc here
    • Once done, run git-crypt unlock git-crypt-secret-public
    • Now you should be able to see configurations file (properties files) contents
  3. Run Unit Tests to ensure a sanity check passes: mvn clean test -Dgroups={"UnitTest"}

Best practices to write Tests

References

  • TBD

Credits

  • Inspired and Thankful to amazing friends/colleagues/mentors