Agile approaches are used to build high-quality software products while reducing the risk associated with long time-to-market.
In this workshop, we would like to share with you about how we apply Agile Automation Testing in our current project and also guide you to start an automation test project easy and painlessly step by step, so that at the end you are confident to write a test by yourself.
5. Incremental Development
Frequent Changes
Continuous Testing
Support Activities
Exhaustive Testing
Testing activities like data set up, test
result validation and test reporting
Continuous testing helps in ensuring the quality
of the code
Automation brings in necessary agility to testing
and helps it to respond faster and more
effectively to changes
Agile teams have only a few weeks to get a grasp
of the requirement, make the code changes and
test the changes
Automation testing can be repeated as many times and
This is highly useful in ensuring code quality when
working in a limited testing window
Reasons
10. • Approaching the product and define the scope when doing automation test
• Suggest customer/PO to select the relevant automation tool/framework
- Define testing strategy
- Define the test plan for each release
- Define the commitment when doing automation test
Responsibilities of an Automation Testing Team
11. • API Automation Testing
• End 2 End Automation Testing
• Performances Testing
• Security Testing
….
Scopes of Automation Testing
12. START RELEASE INSTALL PRODUCTSTOP CHECKIN
DEV BRANCH
STOP CHECKIN
INT BRANCH
STOP CHECKIN
MAIN BRANCH
DEV TIMELINE
TESTING TIMELINE
API
Implementation
Function 1
API Testing
Function 1
UI/Business
implementation
Function 1
Preparing data/
testcase Function 1
API
Implementation
Function n
UI/Business
implementation
Function n
Implement UI Test
Function 1
API Testing
Function n
Preparing data/ test
case Function n
Implement UI Test
Function n
Hot fix on INT
Running test on
INT server
Hot fix on MAIN
Development Timeline
16. • Working with team to classify requirements
• Writing new feature test
• Implementing test cases
• Executing and checking test result
What Automation Team Do
21. Azure Boards
Team
Visual Studio,
Visual Studio Code
Azure Repos (Git)
QA
Web App
Dev
Web App
Main
Web App
Backlogs &
Work items
Push code
Publish
Artifacts
Pull
ArtifactsTrigger Build
Get Source
Install tools
Package Artifacts
Run Unit Test
Build Solution
Publish Artifacts
Build Definition
Deploy to Dev
Production Stage
Azure Build
Pipeline (CI)
Azure Release
Pipeline (CD)
Run API/E2E Test
Deploy to Dev
Dev Stage
Deploy to Dev
…/Main Stage
Production
Web App
Web App
Staging slot
Production slot
Azure Artifacts
Azure Run API
Test Pipeline
Azure Run E2E
Test Pipeline
CI/CD Process
Check Error
Log
24. • Install Git, Node, Visual Studio Code (Extension
Cucumber (Gherkin)), Protractor, Rimraf, Gulp
• Clone projects from repositories
• Open Visual Studio Code and select cloned
project:
1. Click on Branch icon
2. Click on More Actions icon
3. Click on Pull action
⇒ Time to code by yourself
Practice Requirements
25. Team 1:
Part 1:
User Story 1: Implement API Test Case for Search Flight Ticket with criteria
Acceptance Criteria:
- Verify that return data for Search flight with Status Code 200, message OK :
From: Shanghai To: Beijing Date: 12/28/201
- Verify that return data can be sorted by Depart Time and filter by Price From $500 To $1000
User Story 2: Implement API Test Case for Search Flight by ID
Acceptance Criteria :
- Verify that return data display correctly for this flight id (4C82AA22-3DE0-AAF8-CA37-
007E7E592A89) with Status Code 200, message OK
Assignment
26. Team 1:
Part 2:
User Story 3: Implement API Test Case for Booking Flight
Acceptance Criteria:
- I can book the flight successfully with all required information fill out :
Flight ID: a99c4d43-7db2-eab1-7515-2fd94352688c
Traveler: 1 Adult, 1 Children, 1 Infant
Payment with Card Number: 4926530813590899
- Verify that Status code is 200 and flight booking code is returned
Assignment
27. Team 2:
Part 1:
User Story 1: Implement End 2 End Test Case for Search Flight ticket with order by Depart Time
Acceptance Criteria:
- Verify that return data for Search flight correctly:
From: Shanghai To: Beijing Date: 12/28/2019
- Verify that return data can be sorted by Depart Time
Part 2:
User Story 2: Implement End 2 End Test Case for Booking Flight
Acceptance Criteria:
- I can book the flight successfully with all required information fill out:
Search Flight number 4 ($564) from Part 1
Traveler: 1 Adult, 1 Children, 1 Infant
Baggage of Adult is 2
Payment: Card Number: 4926530813590899
- Verify that all information of Flight, Traveler, Total amount are correct at Booking Success page
Assignment
28. Team 3:
Part 1:
User Story 1: Implement End 2 End Test Case for Search Flight ticket with Price Filter
Acceptance Criteria :
- Verify that return data for Search Flight :
From: Shanghai To: Beijing Date: 12/28/2019
- Verify that return data can be filtered Price From $500 to $1000
Part 2:
User Story 2: Implement End 2 End Test Case for Booking Flight
Acceptance Criteria:
- I can book the flight successfully with all required information fill out:
Search Flight number 1 ($564) from Part 1
Traveler: 1 Adult, 1 Children, 1 Infant
Travel Insurance of Adult is Travel Basic
Payment: Card Number: 4926530813590899
- Verify that all information of Flight, Traveler, Total amount are correct at Booking success page
Assignment