یک رویکرد برای توسعه نرمافزار با کیفیت بالا، نوشتن تست برای هر تابع هنگام توسعه و اجرای مکرر آن تستها در طول فرآیند توسعه است.
ماژول doctest ابزاری برای اسکن یک ماژول و اعتبارسنجی تستهای جاسازی شده در رشتههای مستندات برنامه فراهم میکند. ساخت تست به سادگی کپی-چسباندن یک فراخوانی معمولی همراه با نتایج آن در رشته مستندات است. این مستندات را با فراهم کردن یک مثال به کاربر بهبود میبخشد و به ماژول doctest اجازه میدهد مطمئن شود کد همچنان با مستندات مطابقت دارد:
def average(values):
"""میانگین حسابی یک لیست از اعداد را محاسبه میکند.
>>> print(average([20, 30, 70]))
40.0
"""
return sum(values) / len(values)
import doctest
doctest.testmod() # اعتبارسنجی خودکار تستهای جاسازی شده
ماژول unittest به اندازه ماژول doctest بیزحمت نیست، اما امکان حفظ مجموعه جامعتری از تستها در فایل جداگانه را فراهم میکند:
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() # فراخوانی از خط فرمان تمام تستها را اجرا میکند
این محتوا کاملا رایگان توسط تیم کدلپر ترجمه شده و در اختیار شما کاربران عزیز قرار گرفته است، هر گونه کپی برداری برای مقاصد غیر رایگان و بدون ذکر منبع، مورد پیگیری قانونی قرار میگیرد.
ترجمه شده از منبع: https://docs.python.org/3/tutorial