Why use demo websites for test automation practice
Before investing time in learning and building out a test suite against a new automation framework it is a good idea to try it out against different kinds of websites to ensure the framework performs reliably and is easy to work with. For example, if you are using Selenium currently, but are interesting in trying Cypress, Nightwatch, WebDriverIO, or Playwright try doing more than just the basic example against these sites. This way you don't get too invested to find out your chosen automation framework doesn't work on some important area you need to write automation for.
You'll want to try out your test automation framework against things like:
- Modal dialogs
- New tabs
- Multiple windows
- Asynchronous loading of content
- File upload dialogs
You may not have one or all of these scenarios in your current automated software testing project. These demo sites become useful to provide somewhere to practice skills around these harder scenarios if you don't get exposure in your normal everyday feature testing.
I've compiled a list of the best websites I've come across to practice or demo test automation frameworks against in the list below. They include the harder to automate scenarios just mentioned.
Recommended demo websites for test automation practice
This GitHub repository is a collection of common test automation scenarios including hard to automate situations; nested frames, shadow DOM, keypresses, and complicated DOMs.
- The Automation Practice clothing store automationpractice.com
This is an example shopping / clothing storefront maintained by the folks at Selenium. This site is good for multi-page testing, category filtering, and shopping cart testing scenarios.
- ToolsQA demoqa.com
Well organized site for testing common DOM element types such as practice forms, date pickers, login, and an example book store.
- UI Test Automation Playground uitestingplayground.com
Smaller site, but it contains edge cases for load delays, mouse over behavior, dynamic IDs, and automation issues arising from hidden layers.
- SwagLabs saucedemo.com
Another demo web storefront useful for testing login and shopping cart flows. A key distinction on this site is that it has 4 different logins you can use for different experiences for the same site; normal, locked out, problem user, and performance glitch user. Maintained by the folks at SauceLabs.
- Angular Banking Site GlobalsQA
Very small example bank website written in Angular for testing your automation framework against a website written in Angular. The site has login scenarios as well as transaction listing, deposits, and withdrawl behavior workflows.
- Forms sandbox AutomateNow
Small, straight-forward single page site for practicing interactions with typical form controls, search, pop up dialogs, and a map.
- Automation Practice QA-Practice
Clean site that combines several different testing exercises; common web elements, an API with Swagger documentation, small ecommerce site, and a buggy web form you can use to challenge candidates to see how many bugs they can discover.
Recommended API testing sites
If you are learning SuperTest + Mocha for API Test automation or learning Postman the following sites are handy REST APIs to practice tests against.
- Swagger Petstore petstore.swagger.io
Manage an example pet store inventory through this API. This site shows off the usefulness in Swagger when documenting REST APIs, but you can also practice API testing with it.
- Restful Booker restful-booker.herokuapp.com
Test all kinds of CRUD (Create, Update, Delete) REST API scenarios using this example booking API.
- FakeRestAPI fakerestapi.azurewebsites.net
More practice REST endpoints around a book store inventory API. This one lacks Auth operations so you can't practice token creation. However, Restful Booker (above), does support this.
If you know of any other good sites I should include please reach out through my social links below 👇