This post is a follow-up to our previous case study on incorporating unit testing into an existing team’s development environment. The case study is based on a real solution that has already started reaping rewards for our client, and is gaining momentum. We’re now looking at making it easier for the development team to maintain this test suite, and proposing some extensions – including a form of tagging.
Software Testing Series: Top Three Measurements of Quality
The three most important things to understand about the quality of your software are the three things most relevant to your business and your stakeholders (and arguably, your boss).
Top three measurements of software quality
1. How do people perceive our quality?
2. How big of a problem is our quality?
3. How bad is our software, really?
Where Bugs Come From
In the Foundation series article on software processes we introduce a definition of software process as three steps – (decide, develop, deliver). That article will provide some contextfor this discussion, which dives more deeply into the three steps (decide, develop, deliver).
Software testing series: A case study
This post is a test automation case study, but at a higher level.
We’ll talk about it in terms of defining the problem, and then discuss the objective (what we proposed to do to solve the problem), the strategy (how we went about doing it) and the tactics (how we executed the strategy). Since this happened in the real world, we’ll also identify the constraints within which we had to operate.
Foundation Series: Unit Testing of Software
Testing software is more than just manually banging around (also called monkey testing) and trying to break different parts of the software application. Unit testing is testing a subset of the functionality of a piece of software. A unit test is different from a system test in that it provides information only about a particular subset of the software. In our previous Foundation series post on black box and white box testing, we used the inspections that come bundled with an oil change as examples of unit tests.
Software Testing Series: Black Box vs White Box Testing
Should I use black box testing or white box testing for my software?
You will hear three answers to this question – black, white, and gray. We recently published a foundation series post on black box and white box testing – which serves as a good background document. We also mention greybox (or gray box) testing as a layered approach to combining both disciplines.
Given those definitions, let’s look at the pros and cons of each style of testing.
Foundation Series: Black Box and White Box Software Testing
Blackbox tests and whitebox tests.
These terms get thrown about quite a bit. In a previous post, we referenced Marc Clifton’s advanced unit testing series. If you were already familiar with the domain, his article could immediately build on that background knowledge and extend it.
Software testing can be most simply described as “for a given set of inputs into a software application, evaluate a set of outputs.” Software testing is a cause-and-effect analysis.
Software testing series: Introduction
Software testing is a field that is so broad reaching that you can write hundreds of books about – and people have. There are different techniques and different tools. New testing technologies are being created all the time. There are a host of different goals – testing requirements, testing designs, […]
Marc Clifton’s Advanced Unit Testing articles
In a previous post, we mentioned a link to the first in a series of articles by Marc Clifton at The Code Project, a .NET resource site. Here are the links to all 5 of the articles in Marc’s series.