好文档 - 专业文书写作范文服务资料分享网站

第11章 测试代码习题及答案

天下 分享 时间: 加入收藏 我要投稿 点赞

1、 描述一下如何为函数和类编写测试代码。 答案:(1)必须继承unittest.TestCase;(2)用例名称前必须用test_开头;(3)用例执行后,用unittest.TestCase模块的断言来判断用例是否执行通过。

2、 分别描述一下setUp()、tearDown()、setUpClass()和tearDownClass()的作用。

答案:setUp():初始化环境(执行每条用例之前,都要执行setUp函数下面的代码,每次都要执行)

teardown():清洗环境(执行每条用例之后,都要执行tearDown函数下面的代码,每次都要执行)

setUpClass():初始化环境(执行测试类之前,要执行setUpClass函数下面的代码,只执行一次)

tearDownClass():清洗环境(执行测试类之后,要执行tearDownClass函数下面的代码,只执行一次)

3、 为如下类Area编写测试代码。

class Area:

def __init__(self,width=100,length=100): self._width = width self._length = length

def getWidth(self): return self._width

def getLength(self): return self._length

def getArea(self):

return self._width*self._length

def setWidth(self,width): self._width = width

def setLenth(self,length): self._length = length 答案:

import unittest

class AreaTestCase(unittest.TestCase): def setUp(self):

self.area = Area()

def tearDown(self): self.area = None

def testArea(self):

self.assertEqual(self.area.getArea(),10000)

def testWidth(self):

self.area.setWidth(10)

self.assertEqual(self.area.getWidth(),10) def testLength(self):

self.area.setLenth(10)

self.assertEqual(self.area.getLength(),10)

unittest.main(argv=['ignored', '-v'], exit=False)

4、 编写一个名为Employee 的类,其方法__init__() 接受姓名name和月薪salary,并将它

们都存储在属性中。编写一个raise_salary() 方法,它默认将月薪增加100元,但也能够接受其他值。为Employee 编写一个测试用例,其中包含两个测试方法:test_default_raise_salary() 和test _raise_salary() 。使用方法setUp(),以免在每个测试方法中都创建新的雇员实例。 答案:

import unittest

class Employee():

def __init__(self,name,salary): self.name = name self.salary = salary

def raise_salary(self,value=100): self.salary += value return self.salary

class TestEmployee(unittest.TestCase): def setUp(self):

self.employee = Employee('张三',5000) def test_default_raise(self):

rai_salary = self.employee.raise_salary() self.assertEqual(rai_salary,5100) def test_raise_salary(self):

rai_salary = self.employee.raise_salary(200) self.assertEqual(rai_salary,5200)

unittest.main(argv=['ignored', '-v'], exit=False)

第11章 测试代码习题及答案

1、描述一下如何为函数和类编写测试代码。答案:(1)必须继承unittest.TestCase;(2)用例名称前必须用test_开头;(3)用例执行后,用unittest.TestCase模块的断言来判断用例是否执行通过。2、分别描述一下setUp()、tearDown()、setUpClass()和tearDownClass()的作用。答案:setUp
推荐度:
点击下载文档文档为doc格式
3x2da6ekzp1qw0b8cvba7dd7d92wae01aq7
领取福利

微信扫码领取福利

微信扫码分享