《Python Testing Cookbook》读书笔记之一:单元测试


Python Testing Cookbook

读书笔记 pythontesting

Chapter 1: Using Unittest To Develop Basic Tests

配置虚拟环境

在开始写代码测试前,先创建一个独立的测试开发环境,这样可以避免各种包和现有开发环境互相影响,适合进行测试。

一般可以通过virtualenv来创建虚拟环境,这里是官方文档和一篇写得比较好的中文版指南。如果你和我一样使用Anaconda的Python发行版的话,可以使用conda create命令来进行操作,指南戳这里

Anaconda 是一个用来进行大规模数据处理,预测分析和科学计算的Python发行包,里面内置了iPython,NumPy,SciPy等近200种常用包,如果你用python用来做这些事情比较多的话,建议可以直接下载这个。官方地址:https://store.continuum.io/cshop/anaconda/

Asserting the basics

使用例子:

class RomanNumeralConverter(object):
    def __init__(self, roman_numeral):
        self.roman_numeral = roman_numeral
        self.digit_map = {
   "M":1000, "D":500, "C":100, "L":50, "X":10, "V":5, "I":1}

    def convert_to_decimal(self):
        val = 0
        for char in self.roman_numeral:
            val += self.digit_map[char]
        return val

import unittest

class RomanNumeralConverterTest(unittest.TestCase):
    def test_parsing_millenia(self):
        value = RomanNumeralConverter("M")
        self.assertEquals(1000, value.convert_to_decimal())

    def test_parsing_century(self):
        value = RomanNumeralConverter("C")
        self.assertEquals(100, value.convert_to_decimal())

    def test_parsing_half_century(self):
        value = RomanNumeralConverter("L")
        self.assertEquals(50, value.convert_to_decimal())

    def test_parsing_decade(self):
        value = RomanNumeralConverter("X")
        self.assertEquals(10, value.convert_to_decimal())

    
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python Testing Cookbook Paperback: 364 pages Publisher: Packt Publishing (May 17, 2011) Language: English ISBN-10: 1849514666 ISBN-13: 978-1849514668 Over 70 simple but incredibly effective recipes for taking control of automated testing using powerful Python testing tools Learn to write tests at every level using a variety of Python testing tools The first book to include detailed screenshots and recipes for using Jenkins continuous integration server (formerly known as Hudson) Explore innovative ways to introduce automated testing to legacy systems Written by Greg L. Turnquist – senior software engineer and author of Spring Python 1.1 Part of Packt’s Cookbook series: Each recipe is a carefully organized sequence of instructions to complete the task as efficiently as possible In Detail 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. 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. 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. A practical guide, this cookbook will ensure you fully utilize Python testing tools to write tests efficiently. What you will learn from this book : Get started with the basics of writing automated unit tests and asserting results Use Nose to discover tests and build suites automatically Write Nose plugins that control what tests are discovered and how to produce test reports Add testable documentation to your code Filter out test noise, customize test reports, and tweak doctest’s to meet your needs Write testable stories using lots of tools including doctest, mocks, Lettuce, and Should DSL Get started with the basics of customer-oriented acceptance testing Test the web security of your application Configure Jenkins and TeamCity to run your test suite upon check-in Capture test coverage reports in lots of formats, and integrate with Jenkins and Nose Take the pulse of your system with a quick smoke test and overload your system to find its breaking points Add automated testing to an existing legacy system that isn’t test oriented Approach This cookbook is written as a collection of code recipes containing step-by-step directions on how to install or build different types of Python test tools to solve different problems. Each recipe contains explanations of how it works along with answers to common questions and cross references to other relevant recipes. The easy-to-understand recipe names make this a handy test reference book. Who this book is written for Python developers and programmers with a basic understanding of Python and Python testing will find this cookbook beneficial. It will build on that basic knowledge equipping you with the intermediate and advanced skills required to fully utilize the Python testing tools. Broken up into lots of small code recipes, you can read this book at your own pace, whatever your experience. No prior experience of automated testing is required.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值