本文实例讲述了python自动化测试之连接几组测试包的方法,分享给大家供大家参考。具体方法如下:
具体代码如下:
class RomanNumeralConverter(object):
def __init__(self):
self.digit_map = {"M":1000, "D":500, "C":100, "L":50, "X":10, "V":5, "I":1}
def convert_to_decimal(self, roman_numeral):
val = 0
for char in roman_numeral:
val += self.digit_map[char]
return val
import unittest
class RomanNumeralConverterTest(unittest.TestCase):
def setUp(self):
self.cvt = RomanNumeralConverter()
def test_parsing_millenia(self):
self.assertEquals(1000, self.cvt.convert_to_decimal("M"))
def test_parsing_century(self):
self.assertEquals(100, self.cvt.convert_to_decimal("C"))
class RomanNumeralConverterCombo(unittest.TestCase):
def setUp(self):
self.cvt = RomanNumeralConverter()
def test_multi_millenia(self):
self.assertEquals(4000, self.cvt.convert_to_decimal("MMMM"))
def test_add_up(self):
self.assertEquals(2010, self.cvt.convert_to_decimal("MMX"))
if __name__ == "__main__":
suite1 = unittest.TestLoader().loadTestsFromTestCase(RomanNumeralConverterTest)
suite2 = unittest.TestLoader().loadTestsFromTestCase(RomanNumeralConverterCombo)
suite = unittest.TestSuite([suite1, suite2])
unittest.TextTestRunner(verbosity=2).run(suite)
运行结果如下:
test_parsing_century (__main__.RomanNumeralConverterTest) ... ok
test_parsing_millenia (__main__.RomanNumeralConverterTest) ... ok
test_add_up (__main__.RomanNumeralConverterCombo) ... ok
test_multi_millenia (__main__.RomanNumeralConverterCombo) ... ok
----------------------------------------------------------------------
Ran 4 tests in 0.032s
OK
本文实例与前面几篇文章的内容基本一致,只在main中有些不同:
suite1 = unittest.TestLoader().loadTestsFromTestCase(RomanNumeralConverterTest)
suite2 = unittest.TestLoader().loadTestsFromTestCase(RomanNumeralConverterCombo)
suite = unittest.TestSuite([suite1, suite2])
unittest.TextTestRunner(verbosity=2).run(suite)
希望本文所述对大家的Python程序设计有所帮助。 |