Modern development, including micro-service based architecture, is based on APIs. APIs open the doors for better flexibility, improved functionality, and incremental development.
But the APIs we develop need to work. To support quality API development, we need to integrate API testing in different situations. This workshop introduces the automation tooling and methodology around APIs.
In this 4-day workshop, we’ll discuss what APIs are, how to test them, and the tools that become the standard for automation by both programmers and testers.
The workshop is Java oriented but can be done in other languages and technologies.
Workshop length: 4 days.
Intended audience:
- Automation developers
- Manual testers / QA with basic development background
Workshop goals
Following the workshop, attendees will be able to:
Following the workshop attendees, will be able to:
- Write basic tests using a test framework
- Describe how automated test fit into iterative project development
- Describe the structure and components of REST request and responses
- Use Postman to call and test APIs
- Write API tests in Java
Workshop agenda:
All the topics include both presentation and hands on exercises. The hands-on part is at least 50% of the course.
- Test automation basics
- Test project structure
- How code turns into running program
- Source control
- Using CI / CD (Continuous integration and development)
- Test planning and design
- JSON and XML
- Structure and usage
- Parsing tools
- Serialization and deserialization
- REST APIs
- Structure
- HTTP methods
- Path and query parameters
- Headers
- Authentication and authorization
- Postman
- Building and operating requests
- Building workflows
- Automation with pre-requests and tests
- CLI integration
- Integration Tests
- Introduction to REST Assured library
- Building API tests
- Running and reporting
Prerequisites
- Basic coding experience
- IDE and tools installed
- Attendees need to have their own laptops ready and download the exercises beforehand.
- The training materials are in Java, JavaScript, Python, C, C++ or C#.