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

Using Pyccuracy to verify web app security


Applications often have login screens. Testing a secured web application requires us to capture the login process as a custom action. That way, we can re-use it repeatedly for as many scenarios as we need.

Getting ready

  1. If it isn't already running, start up the selenium server in another shell or window by typing: java -jar selenium-server.jar.

  2. If the satchmo store application isn't already running, start it up in another shell or window by typing: python manage.py runserver.

    Tip

    NOTE: This must run inside the virtualenv environment.

How to do it...

With the following steps, we will exercise a web application's security and then see how to extend Pyccuracy by creating a custom action that does the same:

  1. Create a new file called recipe37.acc to contain this recipe's scenario.

  2. Create a story for exercising Django's admin application.

    As a system administrator
    I want to login to Django's admin page 
    So that I can check the product catalog.
  3. Add a scenario that...