#!/usr/bin/env python #coding:utf-8 #Filename: auto.py
from widget import Widget
import unittest
# 执行测试的类
class WidgetTestCase(unittest.TestCase):
def setUp(self):
self.widget = Widget()
def tearDown(self):
self.widget.dispose()
self.widget = None
def testdefaultsize(self):
"""Check that widgets are created with correct default size"""
assert self.widget.getsize() == (40,40), 'incorrect default size'
def testresize(self):
"""Check that widgets are resized with correc size"""
self.assertRaises(ValueError, self.widget.resize, 0,0)
self.widget.resize(100, 100)
assert self.widget.getsize() == (100,100), 'wrong size after resize'
# 构造测试集
def suite1():
#makeSuite方法创建一个由测试用例类内所有测试用例组成的测试套件
#suite = unittest.makeSuite(WidgetTestCase,'test')
suite1 = unittest.TestSuite()
suite1.addTest(WidgetTestCase("testdefaultsize"))
return suite1
def suite2():
suite2 = unittest.TestSuite()
suite2.addTest(WidgetTestCase("testresize"))
return suite2
alltests = unittest.TestSuite((suite1(),suite2())) #将测试结果保存到文件record中
filehandle = open('record','a')
runner = unittest.TextTestRunner(filehandle)
runner.run(alltests)
filehandle.close() # 测试
#unittest模块包含一个main方法,可以方便地将测试模块转变为可以运行测试的脚本;
#main 使用unittest.TestLoader类来自动查找和加载模块内测试用例;
#之前已经使用test*惯例对测试方法进行命名
#if __name__ == "__main__":
# unittest.main()
|