TLDR; if you want to practice your technical web testing then start with testpages.eviltester.com
Do you want a dummy practice site to use to practice and improve your web testing and automating?
I spent the last few weeks in October updating the Test Pages application to be easier for me to maintain, add more content and generally tidied it up to make the pages more focused on specific concepts and avoid too much functionality on one page.
Overview Video
The video provides a quick overview of the software testing practice pages hosted at:
This site is designed as a self-teaching site for anyone learning web testing.
What is Software Testing Pages?
The application is built to help users practice fundamental web testing skills regardless of methodology or tool.
Key areas of suggested practice include:
- Exploratory testing.
- Automating using various tools.
- Learning testing tools, proxies, and browser dev tools.
- Learning web technologies.
The site links off to other high-quality practice testing sites, making it a central reference point. I’ve curated a list of what I consider to be the best practice sites, and the ones that I’ve used. I skipped any with lots of bugs, or that don’t seem to be maintained.
Practice Sections: Pages and Applications (Apps)
The site is organized into categorized sections that target specific functional areas and concepts.
Pages (Basic Testing Practice)
The “Pages” section is ideal for those just beginning their learning journey. These pages cover fundamental concepts and element interaction:
- Basic elements: Examples include a basic web page with a button that can be clicked and automated.
- Element location: Users can practice finding elements by tag name list or by ID. This practice can be done using automated execution tools (like WebDriver or Playwright) or directly within the dev tools using CSS selectors.
- Alerts and interactions: The site includes standard JavaScript alerts (pop-up boxes), as well as elements that look like alerts but require different handling. There are also pages for experimenting with keyboard interaction, where key identifiers are shown for tooling verification.
- Forms: Forms can be submitted using JavaScript, or form submission, and validation can be turned on and off. Explore fully.
We have pages for most fundamental web technologies.
Applications (Apps) (In-Depth Testing)
The “Apps” section features small, typically one-page applications designed for more in-depth testing.
- Classic Exercises: A common example is the triangle application, often used to help explore testing principles, such as checking boundaries and functional requirements.
- Interesting Exploration: Some apps do have bugs. Some have hidden features. They are all designed to be interesting to explore and automate.
- Backend Interaction: Some applications use JavaScript or CSS, while others send data to a server. This includes API-backed forms (like a calculation form). I encourage you to use the network tab to observe requests and explore the underlying Swagger API, which supports POST and GET requests and can be integrated with tools like Postman or Bruno.
Advanced Practice and Resources
The “Challenges” are designed to be more difficult to automate, although they are generally easy for a human user to interact with. This section helps users test the full scope of their web automation tool capabilities.
I am building a reference section containing information related to testing. This goes beyond defining elements, explaining instead why elements are tested and outlining the risks associated with elements (such as input elements).
The reference section also provides links to various videos demonstrating exploratory testing in action.


