Python Testing Cookbook.: Easy solutions to test your Python projects using test-driven development and Selenium,2nd Edition
by: Greg L. Turnquist – Bhaskar N. Das
ISBN-10: 1787122522
ISBN-13: 9781787122529
Edition 版本: 2nd Revised edition
Released: 2018-06-29
Pages: 396
Book Description
Automated testing is the best way to increase efficiency while reducing the defects of software testing. It helps find bugs in code easily and at an early stage so that they can be tackled efficiently. This book delves into essential testing concepts used in Python to help you build robust and maintainable code.
Python Testing Cookbook begins with a brief introduction to Python’s unit testing framework to help you write automated test cases. You will learn how to write suitable test sets for your software and run automated test suites with Nose. You will then work with the unittest.mock library,which allows you to replace the parts of your system that are being tested with mock objects and make assertions about how they have been used. You will also see how to apply Test-driven Development (TDD) and Behavior-driven Development (BDD) and how to eliminate issues caused by TDD. The book explains how to integrate automated tests using Continuous Integration and perform smoke/load testing. It also covers best practices and will help you solve persistent testing issues in Python. The book concludes by helping you understand how doctest works and how Selenium can be used to test code efficiently.
Contents
1: USING UNITTEST TO DEVELOP BASIC TESTS
2: RUNNING AUTOMATED TEST SUITES WITH NOSE
3: CREATING TESTABLE DOCUMENTATION WITH DOCTEST
4: TESTING CUSTOMER STORIES WITH BEHAVIOR-DRIVEN DEVELOPMENT
5: HIGH-LEVEL CUSTOMER SCENARIOS WITH ACCEPTANCE TESTING
6: INTEGRATING AUTOMATED TESTS WITH CONTINUOUS INTEGRATION
7: MEASURING YOUR SUCCESS WITH TEST COVERAGE
8: SMOKE/LOAD TESTING – TESTING MAJOR PARTS
9: GOOD TEST HABITS FOR NEW AND LEGACY SYSTEMS
What You Will Learn
Run test cases from the command line with increased verbosity
Write a Nose extension to pick tests based on regular expressions
Create testable documentation using doctest
Use Selenium to test the Web User Interface
Write a testable story with Voidspace Mock and Nose
Configure TeamCity to run Python tests on commit
Update project-level scripts to provide coverage reports
Authors
Greg L. Turnquist
Greg L. Turnquist has worked in the software industry since 1997. He is an active participant in the open source community and has contributed patches to several projects,including MythTV,Spring Security,MediaWiki,and the TestNG Eclipse plugin. As a test-obsessed script junky,he has always sought the right tool for the job. He is a firm believer in agile practices and automated testing. He has developed distributed systems and LAMP-based setups,and he has supported mission-critical systems hosted on various platforms.
After graduating from Auburn University with a master’s in computer engineering,Greg started working with the Harris Corporation. He worked on many contracts utilizing many types of technology. In 2006,he created the Spring Python project and went on to write Spring Python 1.1 in 2010. He joined SpringSource,a division of VMware in 2010,as part of its international software development team.
Bhaskar N. Das
Bhaskar N. Das has 8 years’ experience in various projects involving application development,maintenance,and support with IBM. He has worked in various technologies and domains including Java,Python,application servers,the cloud,and various database technologies. His domain expertise includes finance and asset management (IT and finance assets). His areas of interest include big data,business finance optimization and scaling,data science,and Machine Learning.
[/erphpdown]