ตรวจสอบเครื่องมือทดสอบหน่วยและสภาพแวดล้อม
GitHub Copilot Chat สามารถใช้เพื่อแนะนําการทดสอบหน่วยตามโค้ดที่คุณระบุ ตัวอย่างเช่น ถ้าคุณระบุลายเซ็นและเนื้อหาของเมธอด GitHub Copilot Chat สามารถแนะนํากรณีทดสอบที่ครอบคลุมพารามิเตอร์อินพุตและค่าเอาต์พุตที่คาดไว้ เมื่อโปรเจ็กต์ทดสอบของคุณมีกรณีทดสอบสองสามกรณี คุณสามารถใช้ GitHub Copilot เพื่อสร้างคําแนะนําการเติมโค้ดสําหรับกรณีทดสอบเพิ่มเติมได้ การใช้การเสร็จสมบูรณ์ของเส้นโค้ดเพื่อสร้างการทดสอบหน่วยจะลดกระบวนการซ้ํา ๆ และช่วยให้แน่ใจว่ารหัสของคุณได้รับการทดสอบอย่างละเอียด
GitHub Copilot Chat ใช้บริบทและความหมายของโค้ดเพื่อแนะนําการยืนยันที่ช่วยให้ฟังก์ชันทํางานได้อย่างถูกต้อง นอกจากนี้ยังช่วยให้คุณสามารถเขียนกรณีการทดสอบสําหรับกรณีขอบและเงื่อนไขขอบเขตที่อาจยากต่อการระบุด้วยตนเอง ตัวอย่างเช่น GitHub Copilot Chat สามารถแนะนํากรณีทดสอบสําหรับการจัดการข้อผิดพลาด ค่า Null หรือชนิดอินพุตที่ไม่คาดคิด
สําคัญ
กรณีการทดสอบที่สร้างขึ้นอาจไม่ครอบคลุมสถานการณ์ที่เป็นไปได้ทั้งหมด การทดสอบด้วยตนเองและการตรวจสอบโค้ดเป็นสิ่งจําเป็นเพื่อให้แน่ใจว่าคุณภาพของโค้ดของคุณ
รองรับ GitHub Copilot สําหรับการทดสอบหน่วย
GitHub Copilot สามารถช่วยในการทดสอบต่อไปนี้:
- ตั้งค่าเฟรมเวิร์กการทดสอบ: รับความช่วยเหลือในการกําหนดค่าเฟรมเวิร์กการทดสอบที่เหมาะสมและส่วนขยาย VS Code สําหรับโครงการและภาษาของคุณ
- สร้างรหัสทดสอบ: สร้างการทดสอบหน่วย การทดสอบการรวม และการทดสอบแบบ end-to-end ที่ครอบคลุมรหัสแอปพลิเคชันของคุณ
- จัดการกรณีขอบ: สร้างชุดการทดสอบที่ครอบคลุมเพื่อให้ครอบคลุมกรณีขอบและเงื่อนไขข้อผิดพลาด
- แก้ไขการทดสอบที่ล้มเหลว: รับคําแนะนําสําหรับการแก้ไขความล้มเหลวในการทดสอบ
- รักษาความสอดคล้อง: ปรับแต่ง GitHub Copilot เพื่อสร้างการทดสอบที่เป็นไปตามแนวทางปฏิบัติในการเขียนโค้ดของโครงการของคุณ
ตั้งค่าเฟรมเวิร์กการทดสอบของคุณ
เพื่อเร่งเวิร์กโฟลว์การทดสอบ GitHub Copilot สามารถช่วยตั้งค่าเฟรมเวิร์กการทดสอบและส่วนขยาย VS Code สําหรับโครงการของคุณได้ GitHub Copilot แนะนํากรอบการทดสอบที่เหมาะสมตามประเภทโครงการของคุณ
เปิดมุมมองแชท
ป้อน
/setupTestsคําสั่งในช่องป้อนข้อมูลแชททําตามคําแนะนําของ GitHub Copilot เพื่อกําหนดค่าโครงการของคุณ
เขียนการทดสอบหน่วยด้วย GitHub Copilot
GitHub Copilot สามารถช่วยคุณเขียนการทดสอบสําหรับโค้ดแอปพลิเคชันของคุณโดยการสร้างโค้ดทดสอบที่ครอบคลุมโค้ดเบสของคุณ ซึ่งรวมถึงการทดสอบหน่วย การทดสอบแบบ end-to-end และการทดสอบสําหรับกรณีขอบ
คุณสามารถสร้างการทดสอบหน่วยโดยใช้เครื่องมือ GitHub Copilot ต่อไปนี้:
- มุมมองแชท: ใช้มุมมองแชทเพื่อสร้างการทดสอบหน่วยสําหรับโปรเจ็กต์ คลาส หรือเมธอดโดยใช้ ถาม วางแผน หรือตัวแทน
- การแชทแบบอินไลน์: ใช้การแชทแบบอินไลน์เพื่อสร้างการทดสอบหน่วยสําหรับคลาสหรือวิธีการที่เลือก
- การดําเนินการอัจฉริยะ: ใช้การดําเนินการอัจฉริยะสร้างการทดสอบเพื่อสร้างการทดสอบหน่วยสําหรับโค้ดที่เลือกโดยไม่ต้องเขียนข้อความแจ้ง
- การเติมโค้ดบรรทัด: ใช้การเติมโค้ดบรรทัดเพื่อแนะนําการทดสอบหน่วยเพิ่มเติมสําหรับกรณีทดสอบที่มีอยู่
แก้ไขการทดสอบที่ล้มเหลว
GitHub Copilot ทํางานร่วมกับ Test Explorer ใน Visual Studio Code และสามารถช่วยแก้ไขการทดสอบที่ล้มเหลวได้
ใน Test Explorer ให้วางเมาส์เหนือการทดสอบที่ล้มเหลว
เลือกปุ่ม แก้ไขความล้มเหลวในการทดสอบ (ไอคอนประกายไฟ)
ตรวจสอบและใช้การแก้ไขที่แนะนํา GitHub Copilot
หรือคุณสามารถ:
เปิดมุมมองแชท
ป้อน
/fixTestFailureคําสั่งเครื่องหมายทับทําตามคําแนะนําของ GitHub Copilot เพื่อแก้ไขการทดสอบ
เคล็ดลับ
เมื่อใช้ GitHub Copilot ในโหมดเอเจนต์ เอเจนต์จะตรวจสอบผลลัพธ์การทดสอบเมื่อรันการทดสอบ และพยายามแก้ไขและเรียกใช้การทดสอบที่ล้มเหลวอีกครั้งโดยอัตโนมัติ
รักษาความสอดคล้องกัน
หากองค์กรของคุณมีข้อกําหนดการทดสอบเฉพาะ คุณสามารถปรับแต่งวิธี GitHub Copilot สร้างการทดสอบเพื่อให้แน่ใจว่าตรงตามมาตรฐานของคุณ คุณสามารถปรับแต่งวิธีที่ GitHub Copilot สร้างการทดสอบได้โดยให้คําแนะนําที่กําหนดเอง เช่น:
- ระบุเฟรมเวิร์กการทดสอบที่ต้องการ
- กําหนดมาตรฐานการตั้งชื่อสําหรับการทดสอบ
- ตั้งค่าการกําหนดลักษณะโครงสร้างโค้ด
- ร้องขอรูปแบบการทดสอบหรือวิธีการเฉพาะ
การสนับสนุน Visual Studio Code สําหรับการทดสอบหน่วย
ในการสร้างและเรียกใช้การทดสอบหน่วย C# ใน Visual Studio Code คุณต้องมีทรัพยากรต่อไปนี้:
- .NET 8.0 SDK หรือใหม่กว่า
- ส่วนขยาย C# Dev Kit สําหรับ Visual Studio Code
- แพคเกจเฟรมเวิร์กทดสอบที่เพิ่มไปยังโครงการของคุณ
การรองรับชุดเครื่องมือพัฒนาสำหรับ C# สำหรับการทดสอบหน่วย
ส่วนขยาย C# Dev Kit สําหรับ Visual Studio Code มีชุดคุณสมบัติมากมายที่จะช่วยคุณสร้างและจัดการการทดสอบหน่วยสําหรับโครงการ C# ของคุณ ซึ่งรวมถึงคุณลักษณะต่อไปนี้:
- Test Explorer - มุมมองทรีเพื่อแสดงกรณีการทดสอบทั้งหมดในพื้นที่ทํางานของคุณ
- เรียกใช้/ดีบักกรณีทดสอบ - คุณลักษณะการเรียกใช้และดีบักกรณีทดสอบ
- ดูผลลัพธ์การทดสอบ - คุณลักษณะเพื่อดูผลลัพธ์การทดสอบ
- การทดสอบคําสั่ง - คําสั่งเพื่อเรียกใช้การทดสอบทั้งหมด เรียกใช้การทดสอบที่ล้มเหลว และอื่น ๆ
- การตั้งค่าการทดสอบ - การตั้งค่าเฉพาะสําหรับการทดสอบ
- แพคเกจเฟรมเวิร์กทดสอบ
C# Dev Kit สนับสนุนเฟรมเวิร์กการทดสอบต่อไปนี้:
- xUnit
- NUnit
- MSTest
C# Dev Kit ช่วยให้คุณสามารถสร้างโครงการทดสอบ เพิ่มแพคเกจเฟรมเวิร์กทดสอบ และจัดการการทดสอบหน่วยได้
การเปิดใช้งานเฟรมเวิร์กการทดสอบ
Command Palette ใน Visual Studio Code เป็นวิธีที่ง่ายที่สุดในการเปิดใช้งานเฟรมเวิร์กการทดสอบสําหรับโครงการของคุณ คุณสามารถเปิด Command Palette ด้วยวิธีต่อไปนี้:
- กดปุ่ม Ctrl + Shift + P (Windows/Linux) หรือ Cmd + Shift + P (macOS)
- เปิดเมนู มุมมอง แล้วเลือก Command Palette
- เปิดมุมมอง Solution Explorer คลิกขวาที่โฟลเดอร์โซลูชัน แล้วเลือก โครงการใหม่ ตัวเลือกนี้จะเปิด Command Palette ด้วย .NET:New Project... เลือกคําสั่ง ไว้แล้ว
ส่วนต่อไปนี้อธิบายวิธีการเปิดใช้งานเฟรมเวิร์กทดสอบสําหรับโครงการ C# ของคุณโดยใช้ Command Palette
xUnit
เปิด Command Palette แล้วเลือก <PackageReference /> ลงในไฟล์โปรเจ็กต์
Microsoft.NET.Test.SdkxUnitxunit.runner.visualstudiocoverlet.collector
จากเทอร์มินัล คุณสามารถเรียกใช้คําสั่งต่อไปนี้:
dotnet add [location of your test csproj file] reference [location of the csproj file for project to be tested]
NUnit
เปิด Command Palette แล้วเลือก <PackageReference /> ลงในไฟล์โปรเจ็กต์
Microsoft.NET.Test.SdkNUnitNUnit3TestAdapter
จากเทอร์มินัล ให้เรียกใช้คําสั่งต่อไปนี้:
dotnet add [location of your test csproj file] reference [location of the csproj file for project to be tested]
MSTest
เปิด Command Palette แล้วเลือก <PackageReference /> ลงในไฟล์โปรเจ็กต์
Microsoft.NET.Test.SdkMSTest.TestAdapterMSTest.TestFrameworkcoverlet.collector
จากเทอร์มินัล ให้เรียกใช้คําสั่งต่อไปนี้:
dotnet add [location of your test csproj file] reference [location of the csproj file for project to be tested]
พัฒนาการทดสอบหน่วยใน Visual Studio Code โดยใช้ GitHub Copilot Chat
การผสมผสานระหว่าง Visual Studio Code และ GitHub Copilot Chat ให้สภาพแวดล้อมที่มีประสิทธิภาพสําหรับการสร้างและเรียกใช้การทดสอบหน่วยสําหรับโครงการ C# ของคุณ
กระบวนการทดสอบหน่วยสามารถแบ่งออกเป็นสามขั้นตอน:
- ใช้ Visual Studio Code เพื่อสร้างโครงการทดสอบสําหรับการทดสอบหน่วยของคุณ
- ใช้ GitHub Copilot Chat เพื่อพัฒนากรณีทดสอบหน่วยสําหรับโครงการ C# ของคุณ
- ใช้ Visual Studio Code และ C# Dev Kit เพื่อเรียกใช้และจัดการการทดสอบหน่วยของคุณ
สร้างโครงการทดสอบ
คุณจําเป็นต้องสร้างโครงการทดสอบที่จะใช้ในการเก็บการทดสอบหน่วยของคุณ คุณสามารถใช้ Visual Studio Code เพื่อทํางานต่อไปนี้ให้เสร็จสมบูรณ์:
ใช้ Command Palette เพื่อสร้างโครงการทดสอบที่ใช้เฟรมเวิร์กการทดสอบที่ระบุ
ใช้เทอร์มินัลแบบรวมเพื่อเพิ่มการอ้างอิงไปยังโครงการที่คุณกําลังทดสอบ
กระบวนการนี้สร้างโครงการใหม่และกําหนดค่าตัวรันการทดสอบสําหรับกรอบงานที่เลือก
สร้างกรณีทดสอบหน่วยโดยใช้ GitHub Copilot Chat
GitHub Copilot Chat สามารถใช้เพื่อช่วยคุณเขียนกรณีทดสอบหน่วยสําหรับเฟรมเวิร์กการทดสอบของคุณ GitHub Copilot Chat จดจําเฟรมเวิร์กการทดสอบและรูปแบบการเข้ารหัสของคุณ และสร้างข้อมูลโค้ดที่ตรงกัน คุณสามารถใช้ GitHub Copilot Chat เพื่อทํางานต่อไปนี้ให้เสร็จสมบูรณ์ได้
เขียนกรณีการทดสอบหน่วยสําหรับเฟรมเวิร์กการทดสอบของคุณตามโค้ดที่เปิดอยู่ในตัวแก้ไขหรือส่วนย่อยของโค้ดที่คุณไฮไลต์ในตัวแก้ไข GitHub Copilot ระบุเฟรมเวิร์กการทดสอบและรูปแบบการเข้ารหัสของคุณ และสร้างข้อมูลโค้ดที่ตรงกัน
ระบุและเขียนกรณีการทดสอบสําหรับกรณีขอบและเงื่อนไขขอบเขตที่อาจยากต่อการระบุด้วยตนเอง ตัวอย่างเช่น GitHub Copilot สามารถแนะนํากรณีทดสอบสําหรับการจัดการข้อผิดพลาด ค่า Null หรือชนิดอินพุตที่ไม่คาดคิด
แนะนําการยืนยันเพื่อให้แน่ใจว่าฟังก์ชันทํางานได้อย่างถูกต้องตามบริบทและความหมายของโค้ด ตัวอย่างเช่น สร้างการยืนยันเพื่อให้แน่ใจว่าพารามิเตอร์การป้อนข้อมูลของฟังก์ชันถูกต้อง
พิจารณาสถานการณ์ต่อไปนี้เมื่อขอให้ GitHub Copilot Chat สร้างกรณีทดสอบหน่วย:
หากเมธอดเดียวปรากฏในเครื่องมือแก้ไขแบบเต็ม คุณอาจขอให้ GitHub Copilot Chat สร้างการทดสอบหน่วยสําหรับเมธอดนั้นโดยพิมพ์
Write a unit test for the method in the #editorหากมีหลายวิธีที่มองเห็นได้หรือวิธีการที่ต้องการขยายเกินกว่าที่มองเห็นในตัวแก้ไข ให้เลือกโค้ดที่คุณต้องการสร้างการทดสอบหน่วย จากนั้นถาม GitHub Copilot:
#selection write a unit test for the selected code
เรียกใช้และจัดการการทดสอบหน่วยใน Visual Studio Code
Visual Studio Code และ C# Dev Kit มีชุดคุณสมบัติมากมายเพื่อช่วยคุณเรียกใช้และจัดการการทดสอบหน่วยสําหรับโครงการ C# ของคุณ คุณสามารถเรียกใช้/ดีบักกรณีทดสอบ ดูผลลัพธ์การทดสอบ และจัดการกรณีทดสอบโดยใช้ Test Explorer
กรณีทดสอบการเรียกใช้/แก้จุดบกพร่อง: C# Dev Kit จะสร้างทางลัด (ปุ่มเล่นสีเขียว) ทางด้านซ้ายของข้อกําหนดคลาสและเมธอด หากต้องการเรียกใช้กรณีทดสอบเป้าหมาย ให้เลือกปุ่มเล่นสีเขียว คุณยังสามารถคลิกขวาเพื่อดูตัวเลือกเพิ่มเติม
Test Explorer: Test Explorer เป็นมุมมองแบบทรีเพื่อแสดงกรณีการทดสอบทั้งหมดในพื้นที่ทํางานของคุณ คุณสามารถเลือกปุ่มบีกเกอร์บนแถบกิจกรรมด้านซ้ายของ Visual Studio Code เพื่อเปิดได้ คุณยังสามารถเรียกใช้/ดีบักกรณีทดสอบของคุณ และดูผลลัพธ์การทดสอบจากที่นั่นได้
ดูผลลัพธ์การทดสอบ: หลังจากเรียกใช้/ดีบักกรณีการทดสอบ สถานะของรายการทดสอบที่เกี่ยวข้องจะได้รับการอัปเดตในการตกแต่งของตัวแก้ไขและ Test Explorer คุณสามารถเลือกลิงก์ในการติดตามสแตกเพื่อไปที่ตำแหน่งที่ตั้งของแหล่งข้อมูล
คําสั่งการทดสอบ Visual Studio Code: มีคําสั่งทดสอบ (เช่น เรียกใช้การทดสอบทั้งหมด) ที่สามารถพบได้โดยการค้นหา ทดสอบ: ในจานคําสั่ง
การตั้งค่าการทดสอบ Visual Studio Code: มีการตั้งค่า Visual Studio Code เฉพาะสําหรับการทดสอบที่สามารถพบได้โดยการค้นหาการทดสอบในตัวแก้ไขการตั้งค่า
สรุป
GitHub Copilot Chat สามารถใช้เพื่อแนะนําการทดสอบหน่วยตามโค้ดที่คุณระบุ ตัวอย่างเช่น ถ้าคุณระบุลายเซ็นและเนื้อหาของเมธอด GitHub Copilot Chat สามารถแนะนํากรณีทดสอบที่ครอบคลุมพารามิเตอร์อินพุตและค่าเอาต์พุตที่คาดไว้ เมื่อโปรเจ็กต์ทดสอบของคุณมีกรณีทดสอบสองสามกรณี คุณสามารถใช้ GitHub Copilot เพื่อสร้างคําแนะนําการเติมโค้ดสําหรับกรณีทดสอบเพิ่มเติมได้ การใช้การเสร็จสมบูรณ์ของเส้นโค้ดเพื่อสร้างการทดสอบหน่วยจะลดกระบวนการซ้ํา ๆ และช่วยให้แน่ใจว่ารหัสของคุณได้รับการทดสอบอย่างละเอียด
GitHub Copilot Chat ใช้บริบทและความหมายของโค้ดเพื่อแนะนําการยืนยันที่ช่วยให้ฟังก์ชันทํางานได้อย่างถูกต้อง นอกจากนี้ยังช่วยให้คุณสามารถเขียนกรณีการทดสอบสําหรับกรณีขอบและเงื่อนไขขอบเขตที่อาจยากต่อการระบุด้วยตนเอง ตัวอย่างเช่น GitHub Copilot Chat สามารถแนะนํากรณีทดสอบสําหรับการจัดการข้อผิดพลาด ค่า Null หรือชนิดอินพุตที่ไม่คาดคิด