13: Dealing with Intermittent Bugs

This is the Software Testing News, a newsletter that goes out every Wednesday. I republish it here for sharing and referencing, but if you'd like to sign up you can do so right here:

Hello there!

Pritesh from Software Testing Notes here 👋.Welcome to the 13th issue of Software Testing Notes! 🚀. There's a lot of good reads, tools and resources this week. Let me know which one is your favorite this week, just reply to this email!

Hope you have a great rest of the week.


📚 Top Reads

How Much Testing is Enough?

“How much testing is enough to qualify a software release?” George Pirocanac lays out few helpful tips in the article on Google Testing Blog.

  • Document your process or strategy.
  • Have a solid base of unit tests.
  • Don’t skimp on integration testing.
  • Perform end-to-end testing for Critical User Journeys.
  • Understand and implement the other tiers of testing.
  • Understand your coverage of code and functionality.
  • Use feedback from the field to improve your process.

Testing, Quality, and my inability to teach by Patrick Prill

Quality is relative, quality is in a constant flow, quality is highly subjective, quality is everywhere and nowhere, quality can’t be predicted, quality cannot be put in numbers.

Quality Assurance is more than just writing and executing test cases. What does quality mean ? and how can we approach testing ? Patrick Prill shares his perspective on how he approaches testing and quality.

Quality Assurance is a process. It is not a role by Alan Richardson

(QA == Process) && (QA != Testing && QA != Tester && QA != Role)

Quality Assurance is a process. It is not a role. Roles have responsibilities, and we all have a responsibility for quality.

Are Automated Test Retries Good or Bad? by Andrew Knight

Automated test retries can be a blessing or a curse. It all depends on how testers use them. If testers use retries to reveal more information about failures, then retries greatly assist triage.

Andrew makes a compelling case about using retries for the failed test cases in automation suite. however there are many things that needs to be considered as this can become terrible antipattern if not given proper care. Explore about the case for it and against it in this post.

10 More Useful Git Commands You Should Know by Andreea Draniceanu via TestProject

Git has become one of things that you can’t live without. Find few useful git commands for everyday use shared by Andreea

Dealing with Intermittent Bugs by Nicola (Owen) Lindgren

Dou you remember that nasty bug that occurred once in 10 executions and you spent hours pulling your hairs on how the hack that happened ? Read this article as Nicola Lindgren shares some ideas on how to deal with intermittent bugs.

  • Gather information about the bug
  • Look at the logs
  • Timebox the investigation
  • Record what you have tried (be specific)
  • Pair with someone

Working with legacy code by Tiger Abrodi

Code without tests is bad code. It doesn’t matter how well written it is; it doesn’t matter how pretty or object-oriented or well-encapsulated it is. With tests, we can change the behavior of our code quickly and verifiably. Without them, we really don’t know if our code is getting better or worse. - Michael Feathers

So, how to work with legacy code ? how should we test it ? what kind of test can be performed ? Tiger Abrodi has put together a detailed article on the same.


⚙️ Automation

E2E Testing with React, Jest, and the TestProject JavaScript OpenSDK by Tyler Hawkins

Running End To End Test with TestProject JavaScript OpenSDK to test a React app with Jest test framework. The article includes,

  • Getting Started with TestProject
  • Configuring Jest
  • Writing Tests with the JavaScript OpenSDK
  • Running Our E2E Tests

Run Two Cypress Test Runners At The Same Time by Gleb Bahmutov

Wondering how to run two Cypress test runners concurrently ? Gleb’s got you covered. Learn with practical example on how to test a real-time Socket.io chat app by running two Cypress test runners concurrently.

How to execute javascript commands in cypress by Ganesh Hegde

In General, javascript commands are not much needed in cypress. The reason is it usually works directly within the browser. Still, if you are in need, Cypress provides a way to modify and perform Javascript actions. See below examples on,

  • Method 1: Execute Javascript in Cypress by getting Native Dom Element
  • Method 2: Execute Javascript in Cypress using window Object in Cypress
  • How to change the text in HTML Element in Cypress?
  • How to add an HTML element dynamically in Cypress?

▶️ API Automation Testing Full Course [YouTube] | JavaScript API Automation by Dilpreet Johal

Dilpreet Johal has put together a Course on Learning API Automation Testing using Javascript with Supertest & Mocha. YouTube tutorial covers some of the topics listed below.

  • Which libraries & frameworks to use for Javascript API Automation
  • Installation & Setup and Write your first API test using Javascript
  • API tests for HTTP GET, POST, PUT and DELETE method
  • API Tests Optimization and Using Async/Await with Supertest
  • Writing negative API tests, Mochawesome Reporter & API tests Jenkins Integration

💨 Performance

How a single PostgreSQL config change improved slow query performance by 50x by Pavan Patibandla

Sometimes a small change can have huge effect on performance. Pavan Patibandla writes about how they analyzed and made some small changes in their PostgreSQL config which improved query performance by 50x.


🛡️ Security

What is a Honeypot and How it Improves Network security? by Gurubaran KS

Honeypot is one type of security mechanism which creates a virtual trap to lure attackers. This is an intentionally vulnerable computer system that allows attackers to exploit the vulnerabilities.

Hack any Website - SubDomain A GUIDE TO SUBDOMAIN TAKEOVERS by Ananya Chatterjee

Introduction to perform a subdomain takeover with example scenario.

Easy Setup Charles Proxy to Intercept HTTPS traffic of Android Emulator by Kidd Tang

Looking for a way to intercept the HTTPS traffic in Android Emulator ? Kidd Tang’s got you covered in this step by step guide to setting up Charles Proxy with Android Emulator.


🌞 Accessibility

Overview of accessibility testing using DevTools

An article about accessibility testing in Microsoft Edge.

  • Using the Inspect tool to detect accessibility issues
  • Verify keyboard support by using the Tab and Enter keys
  • Analyze keyboard accessibility issues using DevTools
  • Testing contrast of text colors in various states
  • Use the Rendering tool to test accessibility for visual impairment

🛠️ Resources & Tools

ModHeader : Modify HTTP request and response headers: 

when you use hyper test in order to create test cases at that moment in time we have to use this extension which is known as mob header.

Classic Cache Killer: 

An extension that is used to clear the cache. It clears all the cache when you load a new web page.

Conftest:

Write tests for your Kubernetes configurations, Tekton pipeline definitions, Terraform code, Serverless configs or any other structured data.


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

When your integration test fails so hard it announces itself to your 44 million subscribers 🤣


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

Happy Reading. 🔥
Pritesh


Did You Enjoy This?

Then consider joining the 400+ other people getting the Software Testing News newsletter. It's a collection of fascinating finds from my week, about wide range of topics surrounding software testing and whatever else catches my interest.

Subscribe to Newsletter

Subscribe to get best resources and articles on Software Test Engineering in your inbox. Every Week — for free!

No spam, ever. We'll never share your email address and you can opt out at any time.