luca-laurence-ZrqrP9Xs2vI-unsplash

ทำไมจำเป็นจะต้องก่อ Unit Testing ?ต้นแบบความตึงเครียดครั้นพบ Error ณรายการกาลเวลาสถานที่ดีฉันสลักรหัสเช่นไรขึ้นมาต้นสักอย่าง ชิ้นที่จะพบทั่วก็ตกว่า bug และ error ต่างๆ ไม่ว่าจะเป็นรายการจี๊ดๆเจียรจนถึงหมู่ขนาดใหญ่ กับสิ่งแห่งหนจำเป็นจะต้องทำก็ถือเอาว่าการ debug หรือไม่ก็สะสาง bug พวกนั้นนั่นเอง ซึ่งอุดมโค้ดสถานที่อีฉันสลักมาเยอะแยะด้วยกันซับซ้อน งานจะคลำหาควานข้อเสียหายในที่โปรแกรมบางคราวก็ใช้เวลานานนำเต็มที่ๆ ก็เพราะว่าไม่ฉลาดจักริเริ่มตรงไหน เปล่าสำคัญใจแหวทั้งปวงฟังก์ชันสำนักงานสมรู้ร่วมคิดมันทำงานได้เจริญรึเปล่า นี่จึงเป็นสาเหตุแหวทำไมฉันแล้วก็ควรทำ Unit Test เพราะฉันจักได้มาสำคัญใจตวาดซีกปะปนกันสิ่งของรายการแห่งหนทดลองหลังจากนั้นจะไม่ไหวเป็นสาเหตุสิ่งของ bug ต้นตอขึ้นไประหว่างการพัฒนารายการประเดิมก่อสร้าง Unit Test ร่างกายเริ่มแรกด้วยการทดลองเขียน Unit Test ณคราวนี้อีฉันจักใช้คืน Python Module แห่งหนมีชื่อแหว unittest สถานที่มีความเก่งกาจซื่อติดสอยห้อยตามชื่อเสียงเรียงนามพ้น ฉันลงมาเสี่ยงการทดสอบเช่นกัน test case ภาพร่างปะปนกันห้ามพ้นริเริ่มขนมจากกระทำการ import module ที่อีฉันจะชดใช้กันเช่นกันคำประกาศิตimport unittestกับเขียนฟังก์ชันที่จะใช้ต่อสู้โดยมีหลักเกณฑ์แหวชื่อฟังก์ชันจำต้องตั้งต้นด้วย “test” อาทิเช่น def test_add(self) … def testMultiply(self) …เพราะฟังก์ชันทดลองสิ่งของอีฉันนั้นจักจำต้องใส่เอาไว้ในคลาสจดจะใช้งานได้มา class TestNumber(unittestมันสมองTestCase): .มันสมองมันสมอง พอนำลงมาสลักจับกลุ่มก็จะได้มาโค้ดออกมาหน้าแบบนี้import unittest class TestNumber(unittestมันสมองTestCase): def test_add(self): selfมันสมองassertEqual(1 + 2, 3) selfมันสมองassertEqual(2 + 2, 4) def testMultiply(self): self.assertEqual(1 * 1, 1) self.assertEqual(1 * 2, 2) selfมันสมองassertEqual(2 * 4, 8) if __name__ == ‘__main__’: unittestมันสมองmain()ทดลองกดรัทิชากร็จักได้มาผลลัพธ์ออกมา.. ———————————————————————- Ran 2 tests in 0.000s OK ในโค้ดแบบตรงนั้นซีกแห่งหนสำคัญก็ตกว่าตรงที่ฉันใช้คืนสืบสวนตวาดจักผ่านหรือไม่ก็มไม่เปลี่ยน test case นั้นๆ ซึ่งก็คือว่า“assertEqual” เพราะจักใช้คืนเกี่ยวกับตรวจสอบแหวค่าใส่เหยาะเข้าไปตรงนั้นทัดเทียมกันหรือเปล่า ตัวอย่างเช่นสมมติว่าอีฉันเหยาะคุณประโยชน์เข้าไปแหว assertEqual(a, b) ก็จักเป็นการสำรวจแหว a นั้นพอๆ กับ b หรือเปล่า นอกจาก assertEqual จึงยังมีฟังก์ชันอื่นๆสิ่งของ unittest module มอบอีฉันคว้าใช้กันตามกำหนดการด้านล่างตรงนี้ขนมจากเว็บ: https://docsมันสมองpython.org/3/library/unittest.html#unittestมันสมองTestCaseกรอบความคิด Test-Driven Development (TDD) ที่เอาใจช่วยแยกออกฉันทำ Unit Testing ม่วนขึ้นไปคนคนนี้มีพลังดังวีรบุรุษ พิสูจน์จ้องนกเขาต้นสัก 5 นาทีดูสิ เขาอีกทั้งเปล่าขึ้นไปมาหายใจพ้นเพราะด้วยมนุษย์แห่งหนคุ้นชินอ่านเกี่ยวข้องการเพิ่มสอบรายการมาบ้างก็อาจชินเปลี่ยนดวงเนตรกับดัก TDD หรือว่า Test-Driven Development มาบ้าง ภายหลังที่รู้จักมักคุ้นกับ Unit Test ภาพร่างโดยประมาณกักคุมหลังจากนั้นอีฉันลองมาดูคดี TDD ต่อกัน กรอบความคิดสิ่งของ TDD ก็ถือเอาว่าให้ดีฉันจารึก Test Case ที่หิวจักแข่งขันดูก่อน จากนั้นพิสูจน์นวดมอบทำงานมองดู มั่นเหมาะหละแหวมันคงยังปฏิบัติการได้มาเปล่าตรงเผง หรือไม่ก็ อีกต่างหากทำงานไม่ได้เกิน เพราะฉันไม่คว้าขเียนรหัสไว้ ถัดจากนั้นก็ปรับรจิตโค้ดแยกออกปฏิบัติการได้เที่ยงตรง หลังจากนั้นวนเวียนซ้ำเจียรทีละส่วน ซึ่งขึ้นไปช่วงเลี่ยนกลับตาลปัตรกับดักขณะที่ฉันจารึกโค้ดแปลนธรรมดาๆ สมมติว่าอีกทั้งไม่เห็นทัศนียภาพถ้าเช่นนั้นอีฉันลองไปดูตัวอย่างกันลองสร้าง TDD พร้อมด้วย Python ภาพร่างหวานคอแร้ง ๆดีฉันลงมาลองเขียนรหัสสร้างเครื่องคิดเลขกัน เริ่มขนมจากสลัก test case พร้อมด้วย unittest เพื่อจะแข่งขันฟังก์ชันการเพิ่มเติมของเครื่องคิดเลขimport unittest class MyTest(unittest.TestCase): def test_hello_world(self): myCal = Calculator(); self.assertEqual(myCal.add_num(1,2), 3) if __name__ == ‘__main__’: unittest.main()Output:E ====================================================================== ERROR: test_hello_world (__main__มันสมองMyTest) ———————————————————————- Traceback (most recent call last): File “mainมันสมองpy”, line 5, in test_hello_world myCal = Calculator(); NameError: name ‘Calculator’ is not defined ———————————————————————- Ran 1 test in 0.000s FAILED (errors=1) จักเห็นแหวมี error ออกมาเพราะว่าอีฉันยังไม่ทันการคว้าเริ่มสร้าง class Calculator ขึ้นมาเลยนั่นเอง มิฉะนั้นถัดจากอีฉันก็ปฏิบัติการก่อสร้าง Calculator พร้อมฟังก์ชัน add_num พอให้ error ตรงนี้หายเจียรกักคุมimport unittest class Calculator(): def add_num(self, a, b): return a + b class MyTest(unittest.TestCase): def test_hello_world(self): myCal = Calculator(); selfมันสมองassertEqual(myCal.add_num(1, 2), 3) if __name__ == ‘__main__’: unittestมันสมองmain()Output:. ———————————————————————- Ran 1 test in 0.000s OKตอนนี้พอรันทดสอบก็จักเปลี่ยนเป็นชิ้นอ่อนโยนหลังจากนั้น และสมมติว่าฉันจักทำฟังก์ชันด้วยการลบออกเลขลำดับก็ฉวัดเฉวียนกลับไปริเริ่มจารึก test case ก่อนกำหนดเท่าเทียมระยะก่อกับดักฟังก์ชันรวมเลขลำดับนั่นเองได้เหลือบเห็นต้นแบบคล่องๆเกี่ยวการจดเอียงสกันจากไปต่อจากนั้น ก็ทดลองปลงใจหยิบยกเจียรลองคิดดูตวาดโปรเจคแห่งหนดีฉันสร้างสิงสู่นั้นพอดีที่จะสร้าง Unit Test หรือว่าพัฒนาด้วย TDD รึเปล่า เพราะว่านอกจากที่ยกตัวอย่างมาในที่วันนี้ก็อีกทั้งมีขั้นตอนเทสฉบับร่างอื่นๆอีกหลายกรรมวิธี จำต้องเลือกเฟ้นเลือกคัดควานหาวิธีที่เหมาะกับงานสิ่งของอีฉันเพื่อจะจะคว้าสลักโค้ดได้อย่างมีความสุขกักคุมนะครับถ้าเธอแหย่พัฒนา สตาร์ทอัพ แอปพลิเคชัน ด้วยกัน เทคโนโลยีสิ่งของตัวเอง ?อย่ารอคอยเลยเวลา ! ทำความเข้าใจทักษะด้านดิจิทัลเพื่อที่จะอัพเกรดความสามารถสรรพสิ่งคุณ เริ่มตั้งแต่ฐานราก ครบถ้วนทำจริงๆในหนทางคอร์สออนไลน์วันนี้ Advance Problem Solving ฿2,590.00 ฿2,090.00฿2,590.00 ฿2,090.00Add to cart Basic Motion Graphic & Animation ฿1,990.00 ฿1,290.00฿1,990.00 ฿1,290.00Add to cart Complete Arduino For Beginner ฿3,290.00 ฿1,990.00฿3,290.00 ฿1,990.00Add to cart COMPLETE ARDUINO FOR BEGINNER WITH ELECTRO KIT I ฿5,180.00 ฿2,590.00฿5,180.00 ฿2,590.00Add to cart