مشخصات مقاله
آموزش کنترل کیفیت در پایتون
کنترل کیفیت در آموزش Python
یک راهکار برای تولید نرم افزار های با کیفیت بالا این است که در زمان ساخت هر تابع ، تست هایی را برای آن بنویسید و آن تست ها را در حین روند توسعه تابع، به طور مکرر اجرا کنید.
ماژول doctest ابزاری برای اسکن کردن یک ماژول و اعتبار سنجی تست های قرار گرفته در docstring های برنامه، ارائه می کند. ساخت تست به سادگی کات-پیست (cutting-and-pasting) یک فراخوانی معمولی به همراه نتایج آن درون docstring است. این کار، مستندات را به واسطه ارائه یک مثال به کاربر، بهبود می بخشد . ماژول doctest با استفاده از این مثال، از صحت کد در مستندات، اطمینان حاصل می کند.
1 2 3 4 5 6 7 8 9 10 11 12 | def average(values): """Computes the arithmetic mean of a list of numbers. >>> print(average([20, 30, 70])) 40.0 """ return sum(values) / len(values) import doctest doctest.testmod() # automatically validate the embedded tests < button ></ button > |
ماژول unittest به سادگی و بی دردسری ماژول doctest نیست، اما این ماژول امکان نگهداری از یک مجموعه جامع و کامل تری از تست را در یک فایل مجزا فراهم می کند.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | import unittest class TestStatisticalFunctions(unittest.TestCase): def test_average(self): self.assertEqual(average([20, 30, 70]), 40.0) self.assertEqual(round(average([1, 5, 7]), 1), 4.3) with self.assertRaises(ZeroDivisionError): average([]) with self.assertRaises(TypeError): average(20, 30, 70) unittest.main() # Calling from the command line invokes all tests < button ></ button > |