Book Image

Python Testing Cookbook

By : Greg L. Turnquist
Book Image

Python Testing Cookbook

By: Greg L. Turnquist

Overview of this book

<p>Are you looking at new ways to write better, more efficient tests? Are you struggling to add automated testing to your existing system? The Python unit testing framework, originally referred to as "PyUnit" and now known as unittest, is a framework that makes it easier for you to write automated test suites efficiently in Python. This book will show you exactly how to squeeze every ounce of value out of automated testing.<br /><br />The Python Testing Cookbook will empower you to write tests using lots of Python test tools, code samples, screenshots, and detailed explanations. By learning how and when to write tests at every level, you can vastly improve the quality of your code and your personal skill set. Packed with lots of test examples, this will become your go-to book for writing good tests.<br /><br />This practical cookbook covers lots of test styles including unit-level, test discovery, doctest, BDD, acceptance, smoke, and load testing. It will guide you to use popular Python tools effectively and discover how to write custom extensions. You will learn how to use popular continuous integration systems like Jenkins (formerly known as Hudson) and TeamCity to automatically test your code upon check in. This book explores Python's built-in ability to run code found embedded in doc strings and also plugging in to popular web testing tools like Selenium. By the end of this book, you will be proficient in many test tactics and be ready to apply them to new applications as well as legacy ones.</p> <p>&nbsp;</p>
Table of Contents (16 chapters)
Python Testing Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Automating your management demo


Got a demo coming? Write automated tests that simulate the steps you'll be taking. Then print out your test suite, and use it like a script.

How to do it...

With these steps, we will see how to write our management demo script in a runnable fashion.

  1. Create a new file called recipe66.py to store the test code for our management demo.

  2. Create a unittest test scenario to capture your demo.

  3. Write a series of operations as if you were driving the application from this automated test.

  4. Include asserts at every point where you will vocally point out something during the demo.

    import unittest
    from network import *
    from springpython.database.factory import *
    
    class ManagementDemo(unittest.TestCase):
        def setUp(self):
            factory = MySQLConnectionFactory("user", "password",
                                         "localhost", "recipe62")
            self.correlator = EventCorrelator(factory)
    
            dt = DatabaseTemplate(factory)
            sql = open("recipe62_network.mysql"...