Issue #17 : Software Testing Notes

🔬 Testing a Data Science Model • Does your Test Automation code smell 👃? Here’s how you can launder it! • ⚙️ The performance effects of too much lazy-loading

Hello everyone! 👋

I’m Pritesh and this is the 17th 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. There are some really nice reads this week, let me know what your favorite is!

Consider subscribing if you haven’t already 👇

Happy Testing and have a great rest of the week! 🙏


📚 Testing

Testing a Data Science Model by Laveena Ramchandani

Laveena shares how she was able to explore the world of data science as a tester when testing a model and how you can apply that if you find yourself in a similar situation. As part of an emerging team, how she was able to contribute value in a new field that she had never tested before.

Webinar Takeaways:

  • Have a better understanding of what data science is.

  • Know how we can test models.

  • Know what existing skills we already have that we can apply in a data science team.

  • Leave with resources to help our teams’ better structure itself to have confidence in the data produced.

  • We’ll look at what did or didn’t work.

An Analytical Approach to Setting Severity of Bugs by Bashiul Alam Sabab

So, how do you assign severity of a bug ? what questions should we ask ? read this detailed post about it by Bashiul Alam Sabab.

The Best SQL Analytics Services: 10 Top Picks by Duncan Elder via QA Lead

SQL is a great way to manage databases and compare information before and after processing and the best SQL analytics tools make performing these tasks easy. They also enable you to display results in beautiful charts and graphs, then share these reports with people in your organization. 

In this article Duncan analyzes top SQL analytics tools and highlight why he like each one. 

How to have a productive programming day by Jason Swett

Jason Swett shares some interesting productivity tips that he has learned over the years. Some of my favorites are,

  • Start real work right away

  • Start with something highly tractable

  • When possible, exercise before work

  • When possible, keep email, Slack, Twitter, etc. closed

  • Work on one thing at a time

  • Try hard to write code that’s easy to understand

  • Keep a to-do list

  • End the day with a plan for tomorrow

Product Management and the Quality Focus by Jeff Nyman

Starting a new role in Product Manager ? or trying to get better perspective on product management ? This should be definitely in your reading list.

Scrum Masters: 6 Questions to Get Your Agile Team in Sync by Sheyinka Harry

Scrum Masters play a critical role in ensuring goal alignment, identifying risks, removing bottlenecks, and keeping sprint backlogs on track. Ask these often overlooked questions to set your agile team up for success.

Sheyinka shares some of her favorite questions to ask as a Scrum Master. Find detailed explanation on below points in this article.

During Backlog Grooming:

  1. How are we scoring effort?

During Sprint Planning:

  1. Do we have all the information needed to get these tickets completed?

  2. How will we complete the Sprint Backlog?

  3. What can we reasonably accomplish during this Sprint?

During Daily Standup:

  1. Is there any new knowledge that we need to take into account?

  2. Are there any risks to the work we committed to?

Tester Stories: How I Encountered and Fixed Flaky Tests by Antoine Veuiller

A flaky test is an analysis of web application code that fails to produce the same result each time the same analysis is run

Antoine Veuiller shares stories of some real-life examples of flaky tests that he has stumbled upon.

“Finding bugs in an organisation”; why I’m frustrated with the tester role recently by Maaike Brinkhof

Eventually almost every testers has experienced some version of this. Maaike puts the thoughts of so many testers to words on why this job can be frustrating at times.


⚙️ Automation

Explain the implementation principle of the Jest framework in a simple way by Eno

Understand the core implementation and principles of the Jest testing framework with detailed examples on the same.

Does your Test Automation code smell? Here’s how you can launder it! by Payoda Technology

Here are some ways by which you can avoid code smells with examples. It’s important that you follow these right from the get-go.

  1. Lengthy Classes

  2. Lengthy Methods

  3. Code Duplication

  4. Unstable locator strategies

  5. Bad exposure

  6. Inefficient wait strategy

  7. Inappropriate points of failure

  8. Hardcoded Data

Test Feature Flags Using Cypress and Flagsmith by Gleb Bahmutov

Testing feature flags provided by 3rd party services ? This blog post teaches you how to control the feature flags provided by 3rd party services like Flagsmith, LaunchDarkly, Split, etc during end-to-end tests.

Getting Started with Regular Expressions by Nick Taylor

Writing Regular Expressions is something every tester should know about. Nick Taylor does a excellent job on using regx in Javascript.

Page Object Model with Playwright by Andrii Baidachenko

Introduction to Playwright with creating a small automation test framework that implements Page Object Model.


💨 Performance

The performance effects of too much lazy-loading by Rick Viscomi and Felix Arntz

Lazy-loading is a technique to defer downloading a resource until it's needed, which conserves data and reduces network contention for critical assets

Data-driven advice for lazy-loading images with Core Web Vitals in mind. This post summarizes how Rick Viscomi and Felix Arntz analyzed publicly available web transparency data and ad hoc A/B testing to understand the adoption and performance characteristics of native image lazy-loading.


🛡️ Security

Automating security tests — how?

Take a deep dive into writing automated tests to verify the security aspects of an application feature (i.e. file upload) and explore writing automated tests on the unit-level and API-level to verify the security aspects of the file upload functionality.


🌞 Accessibility

Testing A Web App Using The Keyboard Only by Gleb Bahmutov

Testing keyboard navigation is one of the important aspect of the accessibility testing. Gleb Bahmutov shares an example Implementing a keyboard-driven test in Cypress.


🛠️ Resources & Tools

Hammer :

Hammer is a touch, stylus and keyboard synthesis library for emulating user interaction events. It enables better ways of triggering UI actions in unit tests, replicating a real world environment as much as possible.

Pulse :

Network Inspector and Logger for Apple Platforms.

Prestige :

A text-based HTTP client in the browser, an interface-less Postman.

Bug Severity Calculator

This is a simple Java GUI application to calculate severity level of a bug.


📝 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.

Show me all Software Testers

Do you also create content around Software Testing ? Submit yours here and I will add it to the list.


And Finally, 

People in IT when they get asked to go to back to the office after the pandemic


👋 Reach Out

Let me know what you thought about this newsletter, maybe you have some ideas you'd like to share.

You can follow me personally @priteshusdadiya. I give insights into Testing, development & how I'm growing Software Testing Notes.

You can follow @thetestingkit to keep up-to-date on the community & fresh links to read.

Thanks so much for reading ️️
Pritesh- Software Testing Notes