การทำ Unit Testing ด้วย Python

  877

1. เปิด Terminal แล้วพิมพ์คำสั่ง  pip install pytest-cov

2. สร้างไฟล์ชื่อ service.py

ไฟล์สคริปต์ service.py จะเป็นไฟล์ที่เราใช้สร้างฟังก์ชันในการทำงานต่างๆ ของเรา

service.py
def sum(num1, num2):
    return num1 + num2

def minus(num1, num2):
    return num1 - num2

def multiply(num1, num2):
    return num1 * num2

def divide(num1, num2):
    return num1 / num2

if __name__ == "__main__":
    print(sum(1, 2))

3. สร้างไฟล์ชื่อ test_service.py

ไฟล์สคริปต์ 

test_service.py
from service import sum, minus, multiply, divide
import unittest

class Test_Calculator(unittest.TestCase):
    def testSumFunction(self):
        self.assertEqual(sum(1, 2), 3)
    def testMinusFunction(self):
        self.assertEqual(minus(11, 0), 10)
    def testMultiplyFunction(self):
        self.assertEqual(sum(1, 2), 3)
    def testDivideFunction(self):
        self.assertEqual(divide(100, 10), 10)

จะเป็นที่ใช้ทดสอบฟังก์ชันต่างๆ ภายใน service.py

4. Run ด้วยคำสั่ง pytest test_service.py

pytest1.png

ใช้ test_serive.py ในการทดสอบ 

pytest2.png

   ผลการทดสอบ

5. Run ด้วยคำสั่ง pytest --cov --cov-report html test_service.py

เมื่อ Run ด้วยคำสั่งนี้แล้ว จะออกรายงานอัตโมัติด้วย HTML

pytest3.png

pytest4.png

pytest5.png

  Python   Test Unit Coverage   Unit Testing Overview “Python”   pytest   pytest --cov --cov-report html