Book Description
Automated testing moves much of the labor of testing off the developer and makes it easier as well as quicker to find bugs and fix them. Automated tests run faster, increase test coverage, and lower costs. However, testing is neither an easy process nor remotely exciting for most developers. But with the right techniques and tools, testing can become a simple and gratifying part of the development process.
With this helpful guide – from an expert – in your hand, testing will not be a tiresome topic for you anymore. You will learn how to test your Python projects in the easiest way, making other parts of the development process easier and more enjoyable.
This book covers the tools and techniques of automated testing and test-driven development. Starting from the very basics, the chapters introduce new tools and techniques in simple, accessible language with step-by-step examples. You will explore how to make testing easier and more accurate with Python’s doctest module and learn test-driven development using the unittest framework. You will also learn how to keep your units separate from each other and discover a simple and easy way to integrate Mocker and unittest. Next, we cover integration testing and web application testing.
Automated testing gives developers better feedback, faster and more often. Bugs get found sooner and fixed better, with less effort. By the end of this book, you will have all of the skills needed to benefit from automated testing.
What you will learn from this book
* Make testing easy and convenient with Python’s doctest module, which lets you put your tests right into your doc strings
* Drive development using unit testing and learn how it can make the process quicker
* Explore the assorted features Mocker provides to help you keep units separate from each other and customize it to suit your needs
* Embed your tests in a controlled and temporary environment using test fixtures
* Simplify the integration of unittest and Mocker using Python Mocker’s MockerTestCase
* Automatically find and execute tests using Nose – a unittest-based testing framework for Python that makes writing and running tests easier
* Write tests for web applications using Twill and integrate it’s capabilities as a library into Python testing code
* Create integration tests and run them to see if your programs work correctly in concert with each other
* Run Nose automatically when your version control software detects changes in the source code
* Set up the Buildbot automated continuous integration system to run your tests repeatedly over many different environments
Approach
The book begins with the very foundations of automated testing, and expands on them until the best-practice tools and techniques are fully covered. New concepts are illustrated with step-by-step hands-on exercises. Testing will be easier and more enjoyable with this beginner’s guide.
Who this book is written for
If you are a Python developer and want to write tests for your applications, this book will get you started and show you the easiest way to learn testing.
You need to have sound Python programming knowledge to follow along. An awareness of software testing would be good, but no formal knowledge of testing is expected nor do you need to have any knowledge of the libraries discussed in the book.
About the Author
Daniel Arbuckle holds a Ph.D. in Computer Science from the University of Southern California. While at USC, he performed original research in the Interaction Lab (part of the Center for Robotics and Embedded Systems) and the Laboratory for Molecular Robotics (now part of the Nanotechnology Research Laboratory). His work has been published in peer-reviewed journals and in the proceedings of international conferences.
Book Details
- Paperback: 256 pages
- Publisher: Packt Publishing (February 19, 2010)
- Language: English
- ISBN-10: 1847198848
- ISBN-13: 978-1847198846
- File Size: 6.7 MiB
- Hits: 2,079 times