Software Testing

This section contains articles that dive into theory and practice of software testing.

A Joon Lee Bug Story

A brief story from Joon Lee that illustrates the benefit of some subject matter knowledge when testing.

Automated Penetration Testing with White-Box Fuzzing

This article covers how to employ a white-box testing approach to fuzzing, leveraging available source or disassembled code of the tested software.

Best Practices: API Testing

In this article, the author describes proven testing practices that you might find useful in your own tests.

Best Practices: Code Reviews

The article will help increase productivity during code reviews (of test code and product code), as well as highlight some common mistakes.

Bug Story: Dig Deep

Test failures you attribute to random issues might be the manifestation of a product issue that needs further investigation.

Bug Story: IIS 7.0

A story about troubleshooting a bug that didn't manifest itself until tested on IIS 7.0.

Common Test Patterns and Reuse of Test Designs

The traditional test-design process is very repetitive, yet many testing problems have generic elements that easily could be reused in the creation of subsequent test designs. This article suggests that you capture these patterns, and use them to simplify the creation of subsequent test designs.

Life-Cycle Performance Testing for Eliminating Last-Minute Surprises

For years, serious performance testers and developers who have a performance focus have been dreaming of the day when they would have a tool that had the features and capabilities that Microsoft Visual Studio Team System brings them. The market asked for it, and Visual Studio Team System delivered.

Pairwise Testing in the Real World: Practical Extensions to Test-Case Scenarios

Pairwise testing has become an indispensable tool in a software tester’s toolbox. This article pays special attention to usability of the pairwise-testing technique.

Selecting Rows Randomly from a Large Table

The authors offer new ideas on how to select random rows from a large table.

Service Compatibility

This article describes what a tester should consider when updating services in a set of connected services.

Umpiring Quality

In this article, the author explores the similarities between baseball umpiring and quality assurance.