Ch 2- Java-basic
Ch 2- Java-basic
The activities of transferring Manual Test Cases into scripts using one of the
programming languages with the help of one of the Automation Testing tools
(ex. Selenium WebDriver) & assertion frameworks (ex. TestNG)
Story 1 Story 2
Login
Login Login
Story 3 Story 4
Sign Up
Sign Up Story 5 Story 6
One major goal of automation is to save time, effort, and avoid human
mistakes.
• Debugging test scripts could be a major issue, If it’s not depending on an well-
structured design pattern.
• Sometimes changes applied on the application calls more test scripts maintenance.
What’s Test Automation
Remember:
FrontEnd BackEnd
Web Automation Tools
Selenium
• Collection of open source APIs
• Automate web app testing
• Languages: Java, Python, Ruby, Javascript
• Official website: https://www.selenium.dev/
Cypress
• Automate web app testing
• JavaScript-only tool
• Official website: https://www.cypress.io/
Web Automation Tools
WebDriverIO
• Automate web apps written in modern
frameworks Like React, Angular, Vue.js
• Also could be used with Native mobile apps
• Official website: https://webdriver.io/
Protractor
• test framework for Angular & AngularJS apps
• JavaScript-only tool
• Official website: https://www.protractortest.org/
Mobile Automation Tools
Appium
Android Espresso
XCUITest IOS
Desktop Automation Tools
WinAppDriver
Robot Framework
API Automation Tools
Postman SoapUI
RestAssured Katalon
Assertion Frameworks
TestNG
• Testing framework inspired from JUnit and NUnit
• TestNG introduces new functionalities makes
it more powerful and easier to use
• Official website: https://testng.org/
Junit
• JUnit is a unit testing framework for Java programming
language.
• Official website: https://junit.org/
Assertion Frameworks
• It tests the behaviour of just one function or method, and is written directly in
the application code.
• Unit Test is the widest section of the pyramid, which should comprise the
largest number of tests
• Unit Tests run very quickly and they are the closest to the code.
Test Automation Pyramid
Service Tests are tests that check the web services (often APIs) that are used in our code.
UI tests verify that end-user activities work correctly. These are the tests that actions like
fill out text fields and click buttons are take place.
• It’s the smallest section of the test pyramid, which should comprise the smallest number
of tests due to their slow speed and multiple dependencies.
THANK YOU!