Auto-Scaled, Dockerized and Paralleled Web Testing with Java, Maven, TestnNG, Zalenium, Jenkins and Kubernetes
Takeaways from your topic
I would like to cover the challenges and relevant solutions of scalable, parallel UI testing over microservices.
Phase 1 (10 minutes):
Motivation for testing UI over microservices.
General overview of relevant tools.
Exploring various user configurations of Zalenium test.
Exploring Zalenium dashboard features.
Pros and cons of recording of the tests.
Phase 2 (15 minutes):
Cover declarative jenkins DSL pipeline for running test suite:
1. Managing a dedicated docker image for Jenkins slave usage, covering Dockerfile.
2. Overview of kubernetes plugin in Jenkins – Auto-scaled jenkins slaves using JNLP container and self defined container.
3. Define prerequisites for running tests on the docker image: Build/VCS tools, JDK, etc.
4. Define post builds action (creation of test reports using allure, email/slack notifications).
Phase 3 (5 minutes):
Cover Selenium 4 new features: Exploring into relative locators.
Phase 4 (15 minutes):
Cover three different alternatives for multi-thread testing:
1. Using the built-in TestNG mechanisim for parallel run.
2. Using Jenkins DSL for running parallel jobs.
3. Self java code development with Runnable and synchronized objects.
Example of overall runtime reduction using parallel testing.
Exploring allure report features.
Displaying environment vars programmatically in allure report (Open-source library developed by the speaker).
Challenges of using allure report in docker.