5 มกราคม 2560

Published มกราคม 05, 2560 by with 0 comment

วิธีการเขียน unittest ใน Python แบบลัด

สวัสดีปีใหม่ 2560 ทุกท่านครับ หลังจากที่ผมได้ทำ PyThaiNLP จึงได้ศึกษาการเขียน unittest ใน Python เลยขอเล่าในบทความนี้ครับ





Unit test คืออะไร

Unit test คือ ระบบทดสอบโค้ดที่เขียนว่าทำงานตามที่ต้องการหรือไม่




บทความนี้เข้ากันได้ทั้ง Python 2.7 และ Python 3

โดยในภาษา Python มีไลบรารี unittest สำหรับทำ Unit test มาในตัว Python ทุกเวชั่น

วิธีการเขียน Unit test ด้วยไลบรารี unittest ในภาษา Python


ให้ทำการสร้างไฟล์สำหรับการทดสอบขึ้นมา ในที่นี้ ผมใช้ชื่อไฟล์ว่า "test.py"
ก่อนใช้งานต้อง
import unittest
แล้วต่อมา ลงมือเขียนส่วน Test

  • ส่วน Test ตามเอกสารของ unittest

  • สร้าง class ครอบส่วนฟังก์ชัน def ที่ต้องการ Test ทั้งหมด

  • ส่วน class เติม unittest.TestCase ลงไปใน class name(unittest.TestCase)

  • ส่วนของฟังก์ชัน def ที่ต้องการใช้ในการ Test ต้องเติม test ใส่นำหน้าชื่อ def เช่น
    def testNumber()

  • ในส่วนคำสั่งใน def ต้องใส่ Method ตามที่เอกสาร unittest กำหนด (ดูได้ที่ https://docs.python.org/3/library/unittest.html#unittest.TestCase.debug)
    หากการเปรียบเทียบใช้
    assertEqual(a, b)
    จะเท่ากับ a==b

  • ใส่คำสั่ง unittest.main() ซึ่งเป็นคำสั่งสำหรับรันการทดสอบไว้ใน __main__ ดังนี้
    if __name__ == '__main__':
      unittest.main()

ได้โค้ดไฟล์ test.py
import unittest
class TestUM(unittest.TestCase):
def testNumber(self):
 self.assertEqual(1+1,2)
if __name__ == '__main__':
 unittest.main()

ผลลัพธ์ เมื่อรันไฟล์
.
----------------------------------------------------------------------
Ran 1 test in 0.000s

OK

อ่านเอกสารการใช้งาน unittest ได้ที่ https://docs.python.org/3/library/unittest.html

บทความนี้เขียนโดย นาย วรรณพงษ์ ภัททิยไพบูลย์ นักพัฒนาภาษา Python ที่บล็อก https://python3.wannaphong.com/

0 ความคิดเห็น:

แสดงความคิดเห็น

แสดงความคิดเห็นได้ครับ :)