A Tester's Guide to .NET Programming
A Tester's Guide to .NET Programming focuses solely on applied programming techniques for testers. You will learn how to write simple automated tests, enabling you to test tools and utilities. You will also learn about the important concepts driving modern programming today, like multitier applications and object-oriented programming. More businesses are adopting .NET technologies, and this book will equip you to assess software robustness and performance.
Whether you're an experienced programmer who's unfamiliar with testing concepts, or you're an experienced tester unversed in VB .NET and C#, the included real-world tips and example code will help you start your projects. Also included are review questions and hands-on exercises to help you retain knowledge. Additionally, the book features examples and quick language tutorials for both C# and VB .NET.
Review By: Mark Cole
10/02/2006"A Tester's Guide to .NET Programming" presents step-by-step instructions to familiarize software test professionals with .NET. Even though the book looks like an intimidating technical manual at 604 pages, it is actually easy to understand with good examples and realistic ambitions. It explains how to use .NET languages (C# and VB.NET) to do simple testing chores by pointing out the relevant framework library functions in .NET for testing, as well as how to do things such as get information on the platform, files, registry, operating system, etc. It assumes little to no programming experience.
The book starts out by explaining what automated software testing with .NET can and can't do to help testers. It then shows how to write a simple program in either C# or VB.NET that checks to see if a file exists or not. In the exercise, the tester writes a simple “testware” program to track bugs three ways--as a console application (from the command prompt), as a windows form application, and as a small Web application. Chapter 3 explains how to store basic test data in a text file, windows registry, or database. Chapter 4 teaches what you need to know about .NET debugging, such as setting break points and stepping into your code, and how to throw and catch exceptions. Chapter 5 discusses the importance of creating a test framework and making code that is reusable from project to project. Chapter 6 continues the theme of software reuse and introduces object-oriented concepts such as polymorphism and inheritance in a way that testers will find easier to understand. Chapter 7 shows the value to testers of console-based testware and how to use Windows Scheduler to run your automated tests during the night and on weekends. Chapters 8, 9, and 10 introduce database testing, developing Web-based testware, and testing COM and Web Services. The final chapter provides an excellent tutorial to Microsoft’s new Team Test software, including integrated unit testing and code coverage.
The appendixes give valuable background information and system requirements for installing Visual Studio (including how to install the Express Edition, which is currently free), a basic quick reference to VB.NET and C# for people who aren't programmers, and a short bibliography of the best books, Web sites, and journals used in the writing of the book.
This is more of an exercise book rather than a leisure read; it contains easy-to-follow exercises. It is aimed at testers who are required to know a little bit about everything and who, as the authors say in the Introduction, ”love to learn continuously.” The book covers a large set of introductory topics and has a lot to say about .NET to testers with no programming experience, programmers who want to write better automatic test programs, and the profoundly curious. Overall, I think it will encourage programmers to do more testing and testers to do more programming, and that is a good thing.