翻译:《实用的Python编程》08_01_Testing (2)

请创建一个单独的 test_stock.py 文件,为 Stock 编写单元测试集。为了让你入门,这里有一小段测试实例创建的代码:

# test_stock.py import unittest import stock class TestStock(unittest.TestCase): def test_create(self): s = stock.Stock('GOOG', 100, 490.1) self.assertEqual(s.name, 'GOOG') self.assertEqual(s.shares, 100) self.assertEqual(s.price, 490.1) if __name__ == '__main__': unittest.main()

运行单元测试,你应该可以获得一些像下面这有的输出:

. ---------------------------------------------------------------------- Ran 1 tests in 0.000s OK

然后,编写其它单元测试来检查以下各项内容:

确保 s.cost 属性返回正确的值(49010.0)。

确保 s.sell() 方法正常工作。它应该相应地减小 s.shares。

确保 s.shares 属性只能设置为整数值。

对于最后一部分,你需要检查异常的触发。要做到这些,一种简单的方法是使用如下代码:

class TestStock(unittest.TestCase): ... def test_bad_shares(self): s = stock.Stock('GOOG', 100, 490.1) with self.assertRaises(TypeError): s.shares = '100'

注:完整翻译见 https://github.com/codists/practical-python-zh

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wssjzx.html