Hello there! 👋
Welcome the 71st edition of Software Testing Notes, a weekly newsletter featuring must-read content on Software Testing. I hope this week has been good for you so far.
This framework v/s that framework debates are as old as they could be. Now the latest has been about Cypress v/s Playwright or Everything else v/s Selenium.
The most important point that many of us tend forget in this is Context. The tool/framework/Language you choose should not be because it’s the new thing, or it’s treading or because you like it. Instead, take a broader perspective and look at what are you trying to achieve. Few weeks ago, I stumbled upon this Comparison spreadsheet template by Maksim Zinovev (Discussion post for context). This was one of most thoughtful comparison that I have come across recently. (Thanks to Nicola Lindgren for sharing this gem on LinkedIn)
Selenium is designed to be a non-opinioniated browser automation tool, where alternatives are test automation tools with many opinions.
This is a very good information with Pros and Cons of test automation tools having opinions. If you are also happen to be evaluating tech for your project then this twitter thread and Maksim Zinovev’s template should serve you as a nice reference point for your requirements.
Now onto the this week’s curated links. I have lots of nice reads for you this week, So let’s dive in!
Habit of exploring is what makes a difference in good and great testers. This is a very insightful article by Emna Ayadi explaining basics of Exploratory Testing as well as advantages of it and few tips on how you could put Exploratory Testing in practice effectively.
When we talk about the BDD and Gherkin, we are usually talking about in the context of automated testing. David Rodenas did a wonderful job describing the obvious pit we tend to fall in over and over again when it comes to writing BDD scenarios and what we could do better.
Holy shit! yup, That’s the first thing came to mind after reading this blog post.
Are you learning the craft of testing and want to get better at it? There is so much learning material out there on internet that it’s overwhelming at times. Dave Westerveld shares some of the great advice in this piece and shows us how to cut through the noise and use best of the Internet in your quest of growing as a Software Tester. I enjoyed reading about “Grounding yourself in the basics” very much.🙏
➜ Read all curated stuff on Software Testing here.
Stateful testing is a more sophisticated version of property-based testing where we verify that after each predefined action, the state fulfills a given requirement or property, which might depend on its previous state.
There is not much documentation about how to perform stateful testing in Android. Here is a great detailed article by Sergio Sastre Florez on how to perform stateful testing using Jqwik testing library to verify state logic in an Android app with real world example.
Are you evaluating an automation tool for your next project? is it Low Code? This post by Paul Grizzaffi might just be the help you need to decide what works best for your application.
Aside from default checkbox filters, there are few other ways to filter requests as well. Take a look a this article by Antonello Zanini and learn how to filter requests and resources in the Network section of Chrome DevTools through its special filter commands.
I’m sure many of us has seen and written a spaghetti code asserting literally everything when API response is too large. I liked the way Patrick Prill describes this as an “assertion orgy”🤣. But if not this then what else you could do? Well, Patrick shows how we could utilize Fluent Interface to write more neat and clean assertions.
Writing end to end tests with Cypress? Anders Ramsay has written a four part series of posts about the process and benefits of writing and using Cypress End to End Tests.
➜ Read all curated stuff on Software Testing Automation.
Apache APISIX Fault Injection Plugin offers a mechanism to inject some errors into our APIs and ensures that our resilience measures are effective.
This blog post by Bobur Umurzokov describes how we can test robustness and resilience of our APIs by performing Fault Injections. Learn about few fault injection testing techniques such as delays and aborts to test the resiliency of your application with Apache APISIX.
➜ Read all curated stuff on Performance Testing.
If you are a tester hoping to learn more about security testing, then you should checkout this list of videos, blog articles and websites that will help you learn everything about security testing. Although this twitter thread by Daniel Kelley has no links attached for each resource, you should be able to find most of the stuff with simple google search.
Nice overview of Network Penetration Testing and it’s different testing types to help you improve network security of your product.
🛠️ Resources & Tools
CyrilEx Regex Tester — is a regular expression tester and visualizer for JS, PHP, Python, Java, Ruby and MySQL. A beta string generator allows to generate string from regular expression.
GradeJS — It analyzes production Webpack bundles without having access to the source code of a website. Instantly see vulnerabilities, outdated packages, and more just by entering a web application URL.
Mockoon — A customizable, parametrized and mock API server with a template engine, supporting features like faker.js for faking values or your own custom fakers.
📝 List of Software Testers
It's hard to find good articles, podcasts on Software Testing. Even hard to find people who create them. Are you also looking for amazing software testers to follow or read their content ? check out this page dedicated to software testers.
Do you also create content around Software Testing ? Submit yours here and I will add it to the list.
🎁 Bonus Content
📌 OTHER INTERESTING STUFF
- Dealing with limiting beliefs
- Working on overcoming Imposter Syndrome
- Why are you so busy? You should only ever be busy on purpose
⭐ LAST WEEK'S MOST READ
- "I would have found this bug with E2E tests" is a fallacy!
- Zalando Quality Engineering Journey—From Monolith to Microservices
- Some ways to get better at debugging
😂 And Finally,
Thinking outside the Box — This is what testers do🤣
Keep Smiling and have a fun week.
📨 Send Me Your Articles, Tutorials, Tools!
Thanks to everyone for subscribing and reading!