External Articles and Books
This collection of articles and books from the Quality Assurance Knowledge Base covers various topics related to software testing and quality assurance. It includes articles on use case testing, good test cases, pairwise testing, testing tours, scenario testing, testing techniques, meaningful metrics, the dark side of software metrics, construct validity in metrics, quality cost analysis, regression testing, exploratory testing, and test automation
We put together an extensive library full of useful resources to make your QA learning and journey much easier and more informative. This library is open to your suggestions so if you want to share useful sources of information, drop us a line in the feedback section and we will add it to our list.
Articles
This is a collection of articles and papers that are useful for QAs and are valuable sources of information.
Aim / Summary | Article |
---|---|
Create Test/ This article explains the nature of use cases in software development and how they can be used to derive test cases. Use cases are sequences of actions performed by a system to produce a result of value to the user. They have pre-conditions and post-conditions, and can include alternative branches and shared pieces. Use case testing offers a new perspective in identifying test cases that other techniques may overlook. The article provides an example of a use case for selecting a product in a purchase order system and demonstrates how to derive test cases from it. |
|
Create Test/ This article by Cem Kaner discusses the concept of good test cases and the complexity involved in designing them. Kaner explains that test cases are meant to provide information and can be considered good in a variety of ways. He defines a test case as a question asked of the program to gain information and highlights the importance of test cases being capable of revealing information. Kaner also explores different objectives of running tests, such as finding defects, blocking premature product releases, minimizing technical support costs, and assessing quality. He emphasizes that good test cases should provide information directly relevant to the testing objective. |
|
QA Testing Techniques/ This article discusses pairwise testing, a popular approach to combinatorial testing in software testing. It explores the concept of pairwise testing, its benefits, and its limitations. The authors argue that although pairwise testing is widely promoted as a best practice, it is often overpromoted and poorly understood. They highlight the importance of understanding the weaknesses of pairwise testing and caution against blindly accepting best practices in testing. |
|
QA Testing Techniques/ The article discusses the concept of testing tours in software testing, which involves exploring different aspects of a product to uncover bugs and issues. The author highlights the history of testing tours and acknowledges the work of other testers who have used this approach. The article also mentions the idea of a low-tech testing dashboard, which is similar to a concept presented by James Bach in 1999. |
|
QA Testing Techniques/ Scenario testing is a method used in software testing to create tests based on hypothetical stories or scenarios. These scenarios help testers think through complex problems and systems. The ideal scenario test has several characteristics, including being based on a story about how the program is used, being motivating, credible, complex, and easy to evaluate. Scenario testing can be used to learn the product, connect testing to documented requirements, expose failures to deliver desired benefits, explore expert use of the program, and surface requirements-related issues. Good scenarios are stories that are motivating, credible, complex, and easy to evaluate. |
|
QA Testing Techniques/ This article discusses testing techniques in software testing. It introduces a classification system called the Five-fold Testing System which includes five dimensions: testers, coverage, potential problems, activities, and evaluation. The article also provides a list of recommended books and articles for further reference on testing techniques. |
|
QA Testing Techniques/ The article discusses the concept of application touring as a part of exploratory testing. The author describes different types of tours that can help testers learn about the product and prioritize risks. These tours include the feature tour, variability tour, complexity tour, claims tour, structure tour, user tour, scenario tour, data tour, configuration tour, interoperability tour, and testability tour. The author provides examples and tips for each tour. |
|
QA Testing Measurements/ The article discusses the importance of meaningful metrics in software engineering and highlights a few key principles for using metrics effectively. These principles include treating metrics as approximations rather than concrete answers, using metrics for estimation rather than prediction, using inquiry metrics to prompt questions and assumptions, and observing people and their actions rather than relying solely on metrics. The article also emphasizes the need for a better understanding of measurement theory and metrics-related pitfalls in the software development and testing industry. |
|
QA Testing Measurements/ The article discusses the dark side of software metrics and how they can have unintended consequences on organizations. It focuses on three specific metrics used to determine a product's readiness for release: defect find/fix rate, percent of tests running/percent of tests passing, and complex model based metrics. The author explains how these metrics can lead to behaviors that hamper productivity and reduce quality, such as manipulating defect counts and withholding defect reports. The article emphasizes the need for a better understanding of the relationship between metrics and what they actually measure. |
|
QA Testing Measurements/ This article discusses the concept of construct validity in software engineering metrics. Construct validity refers to how we know that we are measuring the attribute that we intend to measure. The paper argues that many metrics used in software engineering are inadequately validated and not tightly linked to the attributes they are intended to measure. It presents a framework for evaluating the validity and risk of metrics and applies it to bug counts as an example. The article also suggests the use of multidimensional evaluation to capture the quality of attributes of interest. |
|
Quality Cost Analysis/ How important is quality and how expensive it is? The next article describes how important quality is for different stakeholders and from different angles. It contains also some ideas to how serious consequences not tested software can lead. |
|
Regression Testing/ Here are some ideas about regression testing. Of course, we all know why to use regression testing, but the following article can give you several new ideas about different reasons why to perform regression testing and several approaches how to select tests for regression. |
|
Regression Testing/ The article discusses the concept of exploratory testing and how it can be effective even without a complete specification. It introduces the idea of using oracles and heuristics as tools for exploration. The author then provides an example of evaluating a CD cover printing software called Nero Cover Designer using exploratory testing techniques. |
|
QA Test Automation/ Test automation in software engineering can have both direct and indirect costs and benefits. Direct costs include expensive test case creation, higher pay for automated test creators, licensing costs, and maintenance costs. Indirect costs involve the additional time required to create automated GUI-level tests compared to manual tests, and skilled staff being occupied with automation instead of other tasks like bug hunting. The benefits of test automation, however, are often delayed and include regression tests, smoke tests, change detection in low-risk areas, patches, and localization. Rerunning the same tests in the same version may have lower power compared to running a new set of tests. |
|
Books
This section addresses some useful titles and links that will assist you in your QA journey.
Pricing
QA and Software TestingTitle | Author | Link | Comment |
---|---|---|---|
Pricing Strategy | Bill McFarlane | pricing | |
Pricing: The third business skill | Ernst-Jan Bouter | pricing |
QA and Software Testing
Title | Author | Link | Comment |
---|---|---|---|
Lessons Learned in Software Testing: A Context-Driven Approach | Cem Kaner, James Bach, Bret Pettichord | Useful and practical way how to look at Software Testing - if you can buy just one book about SW Testing, this is the right one | |
The Art of Software Testing
| Glenford J. Myers | The third updated edition of the very first book about Software Testing (originally published in 1979) | |
Hands-On Mobile App Testing | Daniel Knott | Book about mobile app testing, but a lot of things can be used also for standard applications | |
How to Break Software | James A. Whittaker | Another practical book about testing |
Miscellaneous
Other interesting books from different areas - biographies, business, communication, leadership, … (because life is not just about computers and quality assurance)
Title | Author | Link | Comment |
---|---|---|---|
Steve Jobs | Walter Isaacson | Biography of Steve Jobs | |
Shoe Dog: A Memoir by the Creator of Nike | Phil Knight | A story about Nike company - from start-up to one of the most successful company | |
Elon Musk: Tesla, SpaceX, and the Quest for a Fantastic Future | Ashlee Vance | Biography of Elon Musk | |
The Innovators | Walter Isaacson | History of Computers and Software development | |
Start with Why | Simon Sinek | leadership | |
Leadership Wisdom From The Monk Who Sold His Ferrari | Robin Sharma | leadership | |
The 7 Habits of Highly Effective People | Stephen R. Covey | time management, life balance | |
Developing the Leader Within You 2.0 | John C. Maxwell | great ideas about leadership | |
The Four Agreements | Don Miguel Ruiz | life balance | |
Pricing Strategy | Bill McFarlane | pricing | |
Pricing: The third business skill | Ernst-Jan Bouter | pricing |