Tester's toolbox - an alternative guide
When you type ‘test tools’ in Google you can see a lot of links to Selenium, cURL, Cucumber, or even Firefox. I agree they are useful, but we are testers, and we shouldn’t test tools, but real systems. Below I give a lot of links to playgrounds when you can train your skills. I hope this will help you to understand that you should always pair ‘test tool’ with the system you test, not vice-versa. Also, in my opinion, by solving real problems you learn faster than by following tutorials.
automationpractice.com- This is a virtual shop that was designed for testing purposes only (unfortunately it’s in maintenance mode as I write this post…)
the-internet.herokuapp.com - Fantastic site with real exercises :)
Use the same sites for Mobile app testing.
httpbin.org- Fantastic resource for everyone tired of flaky GUI tests and wants to go lower. All endpoint responses (except /XML) are JSON-encoded.
jsonplaceholder.typicode.com- Fake online REST API for testing and prototyping. I have a few tests written against Java + RestAssured. I will show them in one of the future posts.
requestb.in- Testing POST requests I be tricky sometimes. This site allows you to generate a private endpoint where you can send everything you want. All that can be verified in a human-friendly way.
Integration & Unit testing
I believe this should be mainly developers’ duty, but it wouldn’t be bad to have some skills in this area too. Don’t look for online tutorials, just exercise your app, or delve into framework code (deeper understanding may help you write better tests on higher levels as well). Examples: Selenium, RestAssured, Appium.
White-box code internal testing
- www.javadeathmatch.com- a cool site that allows you to identify code smells. It even has multiplayer mode :)
- mapil.co- As a tester, you probably know how annoying and time-consuming testing emails can be. Mail can make it smoother - it stores emails for us and allows us to query them using custom API.
Text messages and call services testing
- tropo.com- Tropo adds communications features to your app with just a few lines of code. Free for development & testing.
BDD, Cucumber & other frameworks
- www.softwaretestinghelp.com- This is a little bit tricky because BDD requires clearly defined use cases. I managed to find them here.
Testing basics - writing test cases
- testingchallenges.thetestingmap.org- The site has few exercises which all you to identify all the tests required for given scenarios, and then evaluate it. Mostly for beginners.
Usability testing (user testing)
- nngroup.com- this is tricky once again. Try to identify scenarios for your app & context using those tips. Really cool article
The hacking community seems to be very active and resource-rich. If you want to train you can easily find quite a few resources. Let me give you just a couple of them (most of them from the sekurakpolish security portal).
- Text Test- If you want to compare texts (like log outputs) this tool is for you. TextTest is an open-source tool for text-based functional testing.
Performance, load, stress testing
I didn’t manage to find any punching bags. Any suggestions? It seems like you have to stick with your own website or app.
But I want to learn a few things first…
Ok, here are some awesome links :)
Useful Java Links- Fantastic list of useful Java frameworks, libraries, software, and hello worlds examples. If Java is your main language you should really check it.
Awesome Test Automation- A curated list of awesome test automation frameworks, tools, libraries, and software for different programming languages. In many programming languages.
Awesome Penetration Testing- A collection of awesome penetration testing resources.
The list is by no means complete. What else can you suggest?
Tags: automation, BDD, learning, pentesting, resources for testers, test automation, testing tools, testing, UI testing, usability testing