AnyBook4Less.com | Order from a Major Online Bookstore |
![]() |
Home |  Store List |  FAQ |  Contact Us |   | ||
Ultimate Book Price Comparison Engine Save Your Time And Money |
![]() |
Title: Effective Software Testing: 50 Specific Ways to Improve Your Testing by Elfriede Dustin ISBN: 0-201-79429-2 Publisher: Addison-Wesley Pub Co Pub. Date: 18 December, 2002 Format: Paperback Volumes: 1 List Price(USD): $34.99 |
Average Customer Rating: 4.38 (8 reviews)
Rating: 5
Summary: Excellent advice with a wider audience than QA
Comment: Think of this book as a 300 page checklist that uncovers gaps in the testing process, some glaring and some more subtle. From that perspective you are not getting yet another book on how to test software, but insights into the author's extensive experience and knowledge. Therein lies the value of this book, and why it is applicable to not only software QA professionals at all experience levels, but to project managements, application support professionals, and developers.
The book is divided into chapters that address a specific phase in the testing process, starting with requirements through to text execution. I won't dwell on the content that will be of particular interest to QA practitioners because the entire book applies. Instead, I'll cite the information that other stakeholders in application delivery will find useful because I believe this book has a much wider audience than just QA:
- Chapter I (Requirements) should be read by project managers and the requirements team. It underscores the importance of integrating the QA team at the earliest stage of a project.
- Chapter IV (System Architecture) shows the importance of communications between the architects and design team and the QA team. Specifically, if QA isn't working closely with architecture, designs may not be testable, which will impose significant costs downstream in the applications delivery process.
- Chapter VI (Unit Testing) gives advice on how to effectively engage the development team in the overall quality strategy.
- Chapter X (Managing Test Execution) has excellent advice on managing defects, which has a plethora of stakeholders and roles, from support, business and development domains. In addition, the guidance on bounding the test execution cycle is not of primary interest to project managers, but also to business stakeholders. It's a sad commentary on the way some organizations manage the test environment when advice for separating the test and development environments need to be included, but this commingling happens too often and I was happy to see it included in this chapter.
This is not a 'how to test' book, it is a compilation of pitfalls and how to avoid them. It is a welcome addition to the growing software quality body of knowledge and one that I recommend highly.
Rating: 5
Summary: A deft, concentrated treatment.
Comment: I proof-read this book and it was so good I felt compelled to read it a second time! I have read several of Elfriede's books and I always find them well organized and consistently readable.
Elfriede is a well known authority in this field and in Effective Software Testing she has produced a state of the art handbook for a comprehensive testing effort.
The format is very pragmatic. The book is split into different areas in a useful sequence and each area has an overview with seperate following chapters providing more detail. The chapters are concise and the subject area's contents are concentrated and free of jargon.
We have implemented many of these precepts in our organization to very good effect. Highly reommended!
Rating: 4
Summary: Use in conjunction with books on unit testing
Comment: My review of this book is based on my having recently read several others about software testing. In particular, "Test-Driven Development: By Example" by Kent Beck, where the basic premise is that the tests are written either before or simultaneously with the code. I have long believed that this approach is the best way to create quality code and I am skeptical about any other testing approach. The plans in this book can be considered as a broad overview of the testing strategy rather than down into the specifics of how to write tests for specific blocks of code.
Many of the examples are in the realm of the obvious, but not always clearly implemented. For example, number 17 is "Verify that the system supports testability" and number 31is "Know the different types of testing-support tools." In the case of 17, the word system is being used to describe large projects and the topic deals with verifying that it is possible to test the integrated system by tracking the source of errors and how the components interact with each other. Tracking down errors that arise when systems are integrated is very hard, and in general it is necessary to make the plans on how to track down such errors when the architecture for the system is being designed. Therefore, the point, which seems obvious, is in fact a very critical one.
Determining what software testing tools are available is another very critical step in the effective, efficient testing of software. The enormous number of different pathways through modern software makes it impossible to use even the largest army of testers to check them all. Therefore, the only way to provide reasonable coverage of the options is to let other software examine it. Tools such as memory and other system resource checkers, source code scanners that look for "obvious" bugs, programs that generate test data sets either randomly or clustered about most likely values, and test generators can sometimes provide valuable assistance in cleaning code. When working in C/C++, I found a code scanner to be extremely helpful, and wrote a simple one some time ago. It searched for instances of a single "=" in Boolean expressions, semicolons immediately after if, while and for loops, and places where the delete command was used on pointers that might point to an array. It was simple, but it did find some bugs that quite likely would have taken me hours to find.
The testing principles are organized into ten categories:
* Requirements phase.
* Test planning.
* The testing team.
* The system architecture.
* Test design and documentation.
* Unit testing.
* Automated testing tools.
* Automated testing: Selected best practices.
* Nonfunctional testing.
* Managing test execution.
As you can see, the concept of testing is included from the very first stages of the project. This is essential, as it is very possible to incorporate something into the design that will make effective testing difficult or even impossible. Experienced software testers should be included in the planning from the first day of construction.
I consider this book to be a companion volume to those that emphasis testing as part of coding. With this book and one of the others, you can raise the level of your software quality quotient, which makes the life of everyone much easier.
![]() |
Title: Lessons Learned in Software Testing by Cem Kaner, James Bach, Bret Pettichord ISBN: 0471081124 Publisher: John Wiley & Sons Pub. Date: 15 December, 2001 List Price(USD): $39.99 |
![]() |
Title: Managing the Testing Process: Practical Tools and Techniques for Managing Hardware and Software Testing, 2nd Edition by Rex Black ISBN: 0471223980 Publisher: John Wiley & Sons Pub. Date: 19 July, 2002 List Price(USD): $40.00 |
![]() |
Title: How to Break Software: A Practical Guide to Testing by James A. Whittaker ISBN: 0201796198 Publisher: Pearson Addison Wesley Pub. Date: 09 May, 2002 List Price(USD): $35.00 |
![]() |
Title: Automated Software Testing: Introduction, Management, and Performance by Elfriede Dustin, Jeff Rashka, John Paul ISBN: 0201432870 Publisher: Addison-Wesley Pub Co Pub. Date: 28 June, 1999 List Price(USD): $49.99 |
![]() |
Title: Testing Computer Software, 2nd Edition by Cem Kaner, Jack Falk, Hung Q. Nguyen ISBN: 0471358460 Publisher: John Wiley & Sons Pub. Date: 12 April, 1999 List Price(USD): $50.00 |
Thank you for visiting www.AnyBook4Less.com and enjoy your savings!
Copyright� 2001-2021 Send your comments