Travels in April
| 
|
April 2-17
Malmo, Lund, Stockholm, and Kista, Sweden
April 19-24 The Netherlands April 28-May 2 Orlando, Florida STAREast conference For schedule details, click here.
|
Public Classes on
Rapid Software Testing
|
|
|
Noteworthy Blogs
This month, we feature 3 blogs with recent posts that comment on the topic of Testing and Checking (the focus of James' blog post shown to the right).
|
|
Connect With Us...
|
Your comments are always welcome, and we'd enjoy hearing from you. Just click here to tell us what topics you'd like to see in the next one.
|
What Participants Say about the Rapid Testing Intensive Online
I was a little daunted by RTI at first. But I'm grateful to have participated. I took away a lot more than I expected. --C.C.
I learned a lot about how other people test. How to organise the testing and test coverage better using mind maps and what to think about while testing. --R.H.
Other testers in our software testing department enjoyed attending your online Webinar last year. I was afforded the opportunity to attend this one and other team members will attend a future webinar. I am sure we will continue to include these webinars in our training. --D.V.
| |
|
|
|
 |
I love London. I love walking in London. Although I rarely stop working when I'm on the road, I did get a day at the British Museum (where I discovered that becoming a member does NOT mean you get to stay there at night when the exhibits come to life) and a couple hours at the National Portrait Gallery.
 | A Swedish street sign. Reminds me of a spell for Harry Potter. |
At the same time, Michael Bolton and I have been refining the Rapid Software Testing methodology. I've been haunting little cafes, with my Moleskine and other tools, working out the precise differences between checking and testing. Read my blog for more about that. And now, I'm in Sweden, and when I'm not working, I'm walking. When I walk, I sometimes get almost lost. See what happens when I do.By the end of the month, I'll be on my way back to the US for the STAREast Conference in Orlando. Hope to see a bunch of you there, James
|
Can you tell me what "positive testing" is? Do you know what "negative testing" is? Lots of people think they know. But the web is full of confusion on this. When I Googled it, the top links included two definitions:
- Positive testing is testing to see if the product does what it is supposed to do.
- Negative testing is testing to see if the product does not do what it is not supposed to do.
and
- Positive testing is testing with valid data.
- Negative testing is testing with invalid data.
Both of these formulations have a grain of value, or more than a grain, but they are not good enough. I think we can do much better. Let's tune them up.
The first set is a big problem, because it's a nearly empty distinction. In all testing you are looking to see that the product does the right thing and not the wrong thing. By the first set of definitions, absolutely every moment you test your testing is positive and negative. Consider testing a web page. Imagine that the web page comes up properly, except right at the end it crashes the browser. If you thought you were doing "positive testing" would you say there's no problem? Would you say, "I was just wanting to see if it did what it was supposed to do, and the answer is yes. The fact that it also did what it's not supposed to do, by crashing, is irrelevant." Of course not! What people think they mean by that definition is not what the definition actually says. Instead, by "testing to see if it doesn't do what it's not supposed to do," most people think they are referring to input conditions. Hence they give the product bad input and check to see that it's handled properly, instead of badly. But gee, that sure sounds like positive testing, again ("testing to see if it does what it's supposed to do.")
So the first set of definitions is not about a kind of testing at all, but rather an exhortation to remember to notice and report a certain kind of bug that everyone is, in fact, always looking for, no matter what kind of testing they think they are doing. Thanks for nothing, definitions! The second set of definitions is simpler and it maps to what a lot of people think negative testing is. It's not terrible. But we can do better.
My suggestion for a better way to think about it begins with this fact: developers have needs. Yes, when a programmer is writing his code, he makes a lot of assumptions or near assumptions about what the environmental conditions are in which his program operates. He relies on a whole set of required conditions. He may or may not check for those conditions. He may or may not be conscious of them, even. But they are there all the same. Every program needs enough disk space and memory to function, for instance. With this in mind, consider these revised definitions:
- Positive testing means affirming the required conditions and assumptions of the programmer.
- Negative testing means negating the required conditions and assumptions of the programmer.
In other words, negative testing is testing that negates something and positive testing affirms what has been posited. These definitions are consistent with the "valid and invalid data" definitions, but are more general and powerful, since they go beyond input data, as such, and apply to configurations, states, hardware, and even attributes of users. And unlike the first set of definitions, they comprise a heuristic for designing new tests.
If you want to do negative testing, make a list of things that the program needs (from the environment, from the user, or from anything) and then systematically violate those conditions. For positive testing, make sure each condition is met. This is what we do when we speak of "happy paths," right?
Finally, these definitions are also consistent with Klayman and Ha's famous paper on positive test strategy ("Confirmation, Disconfirmation, and Information in Hypothesis Testing", Psychological Review, 1987). And, you know, if Science is with us, who can be against us? |
|
From My Blog
Author's Note: This is the post that a bunch of folks are talking about. A few of the best ones are featured in the Noteworthy Blogs section on the left.
Testing and tool use are two things that have characterized humanity from its beginnings. (Not the only two things, of course, but certainly two of the several characterizing things.) But while testing is cerebral and largely intangible, tool use is out in the open. Tools encroach into every process they touch and tools change those processes. Hence, for at least a hundred or a thousand centuries the more philosophical among our kind have wondered...(Read More)
|
|
Online and Onsite Training Events
|
MAY 8-10:
Rapid Testing Intensive Online: WebinarMay will be here before you know it, so make sure this is on your calendar. Get the best training you can get from the comfort of your own home or office , and register now.
"RTI is a unique learning experience. Especially after attending so many training programs with very little return on the time I invested. A workshop where you can immediately apply what you are learning is fabulous! I am extremely busy as a Testing Manager and I also test - so anything that takes me away from my job must be valuable. RTI is a valuable use of my time." --Bernice Niel Ruhland, New York
(See more comments on the left.)
Ra pid Software Testing, Public Class
Onsite at Orcas Island (Eastsound, WA)
This is the only public RST that James is teaching in the USA for 2013, and it comes with the stunning surroundings of Orcas Island in Washington state.
Rooms are very limited at Rosario Resort where the class will be held, so don't wait to register. And be sure to stay for Friday the 28th to go Orca whale watching with us. Get a complete 3.5-hour boat excursion on Friday, including lunch, compliments of Satisfice. Seats are limited and are first-come, first-served. "I've been fortunate enough to make it to both the RTI onsite and RTI online. Both were fun learning experiences but being onsite, surrounded by like-minded individuals, sharing approaches while testing a new product is a really special experience. Plus you've got the added benefit of visiting Orcas, venting problems to James, James venting problems to you, networking with other testers, playing a few after hours games and the occasional outdoor adventure." --Chris Kenst, California
Monday, June 24: Evening Welcome Reception
Tuesday through Thursday, June 25-27: RST training event
Friday, June 28: Whale Watching (optional)
|
|
|
|