ホームページ >バックエンド開発 >Python チュートリアル >Python 自動テストは、テスト パッケージのサンプルのいくつかのセットを接続します
この記事の例は、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
この記事の例は、主な部分のいくつかの違いを除いて、基本的に以前の記事の内容と同じです。
suite1 = unittest.TestLoader().loadTestsFromTestCase(RomanNumeralConverterTest) suite2 = unittest.TestLoader().loadTestsFromTestCase(RomanNumeralConverterCombo) suite = unittest.TestSuite([suite1, suite2]) unittest.TextTestRunner(verbosity=2).run(suite)
この記事が皆さんの Python プログラミングに役立つことを願っています。