ตรวจสอบเครื่องมือทดสอบหน่วยและสภาพแวดล้อม

เสร็จสมบูรณ์เมื่อ

GitHub Copilot Chat สามารถใช้เพื่อแนะนําการทดสอบหน่วยตามโค้ดที่คุณระบุ ตัวอย่างเช่น ถ้าคุณระบุลายเซ็นและเนื้อความของเมธอด GitHub Copilot Chat สามารถแนะนํากรณีการทดสอบที่ครอบคลุมพารามิเตอร์การป้อนข้อมูลและค่าเอาต์พุตที่คาดไว้ได้ เมื่อโครงการทดสอบของคุณประกอบด้วยกรณีการทดสอบสองสามกรณี คุณสามารถใช้ GitHub Copilot เพื่อสร้างคําแนะนําการกรอกโค้ดสําหรับกรณีทดสอบเพิ่มเติมได้ การใช้การเสร็จสมบูรณ์ของเส้นโค้ดเพื่อสร้างการทดสอบหน่วยจะลดกระบวนการซ้ํา ๆ และช่วยให้แน่ใจว่ารหัสของคุณได้รับการทดสอบอย่างละเอียด

GitHub Copilot Chat ใช้บริบทและความหมายของโค้ดคุณเพื่อแนะนําการยืนยันว่าฟังก์ชันทํางานได้อย่างถูกต้อง นอกจากนี้ยังช่วยให้คุณสามารถเขียนกรณีการทดสอบสําหรับกรณีขอบและเงื่อนไขขอบเขตที่อาจยากต่อการระบุด้วยตนเอง ตัวอย่างเช่น GitHub Copilot Chat สามารถแนะนํากรณีการทดสอบสําหรับการจัดการข้อผิดพลาด ค่า null หรือชนิดการป้อนข้อมูลที่ไม่คาดคิด

สําคัญ

กรณีการทดสอบที่สร้างขึ้นอาจไม่ครอบคลุมสถานการณ์ที่เป็นไปได้ทั้งหมด การทดสอบด้วยตนเองและการตรวจสอบโค้ดเป็นสิ่งจําเป็นเพื่อให้แน่ใจว่าคุณภาพของโค้ดของคุณ

การสนับสนุน GitHub Copilot สําหรับการทดสอบหน่วย

Copilot สามารถช่วยในการทดสอบงานต่อไปนี้:

  • ตั้งค่าเฟรมเวิร์กการทดสอบ: รับความช่วยเหลือในการกําหนดค่าเฟรมเวิร์กการทดสอบที่เหมาะสมและส่วนขยาย VS Code สําหรับโครงการและภาษาของคุณ
  • สร้างรหัสทดสอบ: สร้างการทดสอบหน่วย การทดสอบการรวม และการทดสอบแบบ end-to-end ที่ครอบคลุมรหัสแอปพลิเคชันของคุณ
  • จัดการกรณีขอบ: สร้างชุดการทดสอบที่ครอบคลุมเพื่อให้ครอบคลุมกรณีขอบและเงื่อนไขข้อผิดพลาด
  • แก้ไขการทดสอบที่ล้มเหลว: รับคําแนะนําสําหรับการแก้ไขความล้มเหลวในการทดสอบ
  • รักษาความสอดคล้อง: ปรับแต่ง Copilot เพื่อสร้างการทดสอบที่ทําตามแนวทางปฏิบัติในการเขียนโค้ดของโครงการของคุณ

ตั้งค่าเฟรมเวิร์กการทดสอบของคุณ

เพื่อเร่งเวิร์กโฟลว์การทดสอบของคุณ Copilot สามารถช่วยตั้งค่าเฟรมเวิร์กการทดสอบและส่วนขยาย VS Code สําหรับโครงการของคุณ Copilot แนะนําเฟรมเวิร์กการทดสอบที่เหมาะสมตามชนิดโครงการของคุณ

  1. เปิดมุมมองแชท

  2. ป้อน /setupTests คําสั่งในเขตข้อมูลอินพุตการสนทนา

  3. ทําตามคําแนะนําของ GitHub Copilot เพื่อกําหนดค่าโครงการของคุณ

เขียนการทดสอบหน่วยด้วย GitHub Copilot

GitHub Copilot สามารถช่วยคุณเขียนการทดสอบสําหรับรหัสแอปพลิเคชันของคุณ โดยการสร้างรหัสทดสอบที่ครอบคลุม codebase ของคุณ ซึ่งรวมถึงการทดสอบหน่วย การทดสอบแบบ end-to-end และการทดสอบสําหรับกรณีขอบ

คุณสามารถสร้างการทดสอบหน่วยโดยใช้เครื่องมือ GitHub Copilot ต่อไปนี้:

  • มุมมองแชท: ใช้มุมมองแชทสร้างการทดสอบหน่วยสําหรับโครงการ ระดับ หรือวิธีการโดยใช้โหมดถามแก้ไขหรือตัวแทน
  • แชทแบบอินไลน์: ใช้การแชทแบบอินไลน์เพื่อสร้างการทดสอบหน่วยสําหรับชั้นเรียนหรือวิธีการที่เลือก
  • การดําเนินการอย่างชาญฉลาด: ใช้การดําเนินการสร้างการทดสอบอย่างชาญฉลาดเพื่อสร้างการทดสอบหน่วยสําหรับโค้ดที่เลือกโดยไม่ต้องเขียนพร้อมท์
  • การเสร็จสมบูรณ์ของบรรทัดโค้ด: ใช้การเสร็จสมบูรณ์ของบรรทัดโค้ดเพื่อแนะนําการทดสอบหน่วยเพิ่มเติมสําหรับกรณีการทดสอบที่มีอยู่

แก้ไขการทดสอบที่ล้มเหลว

Copilot ผสานรวมกับ Test Explorer ใน Visual Studio Code และสามารถช่วยในการแก้ไขการทดสอบที่ล้มเหลว

  1. ใน Test Explorer ให้วางเมาส์เหนือการทดสอบที่ล้มเหลว

  2. เลือกปุ่ม แก้ไขความล้มเหลวในการทดสอบ (ไอคอนรูปประกาย)

  3. ตรวจทานและใช้การแก้ไขที่แนะนําของ Copilot

หรือคุณสามารถ:

  1. เปิดมุมมองแชท

  2. ป้อน /fixTestFailure คําสั่งเครื่องหมายทับ

  3. ทําตามคําแนะนําของ Copilot เพื่อแก้ไขการทดสอบ

เคล็ดลับ

โหมดตัวแทนจะตรวจสอบเอาต์พุตทดสอบเมื่อเรียกใช้การทดสอบและพยายามแก้ไขและเรียกใช้การทดสอบที่ล้มเหลวโดยอัตโนมัติ

รักษาความสอดคล้องกัน

หากองค์กรของคุณมีข้อกําหนดในการทดสอบที่เฉพาะเจาะจง คุณสามารถกําหนดวิธีที่ Copilot สร้างการทดสอบเพื่อให้แน่ใจว่าเป็นไปตามมาตรฐานของคุณได้ คุณสามารถปรับแต่งวิธีการที่ 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 และเลือก .NET:New Project... จากนั้นเลือก xUnit Test Project และใส่ชื่อและตําแหน่งที่ตั้งสําหรับโครงการใหม่ คําสั่งนี้สร้างโครงการและไดเรกทอรีใหม่ที่ใช้ xUnit เป็นไลบรารีการทดสอบและกําหนดค่าโปรแกรมรันการทดสอบโดยการเพิ่มองค์ประกอบ <PackageReference /> ต่อไปนี้ลงในไฟล์โครงการ

  • Microsoft.NET.Test.Sdk
  • xUnit
  • xunit.runner.visualstudio
  • coverlet.collector

จากเทอร์มินัล คุณสามารถเรียกใช้คําสั่งต่อไปนี้:


   dotnet add [location of your test csproj file] reference [location of the csproj file for project to be tested]

NUnit

เปิด Command Palette และเลือก .NET:New Project... จากนั้นเลือก NUnit3 Test Project และใส่ชื่อและตําแหน่งที่ตั้งสําหรับโครงการใหม่ คําสั่งนี้สร้างโครงการและไดเรกทอรีใหม่ที่ใช้ NUnit เป็นไลบรารีทดสอบและกําหนดค่าโปรแกรมรันการทดสอบโดยการเพิ่มองค์ประกอบ <PackageReference /> ต่อไปนี้ลงในไฟล์โครงการ

  • Microsoft.NET.Test.Sdk
  • NUnit
  • NUnit3TestAdapter

จากเทอร์มินัล ให้เรียกใช้คําสั่งต่อไปนี้:

    dotnet add [location of your test csproj file] reference [location of the csproj file for project to be tested]

MSTest

เปิด Command Palette และเลือก .NET:New Project... จากนั้นเลือก โครงการทดสอบ MSTest และใส่ชื่อและตําแหน่งที่ตั้งสําหรับโครงการใหม่ คําสั่งนี้สร้างโครงการและไดเรกทอรีใหม่ที่ใช้ MSTest เป็นไลบรารีการทดสอบและกําหนดค่าตัวเรียกใช้การทดสอบโดยการเพิ่มองค์ประกอบ <PackageReference /> ต่อไปนี้ลงในไฟล์โครงการ

  • Microsoft.NET.Test.Sdk
  • MSTest.TestAdapter
  • MSTest.TestFramework
  • coverlet.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 เพื่อทํางานต่อไปนี้ให้เสร็จสมบูรณ์ได้:

  1. ใช้ Command Palette เพื่อสร้างโครงการทดสอบที่ใช้เฟรมเวิร์กการทดสอบที่ระบุ

  2. ใช้เทอร์มินัลแบบรวมเพื่อเพิ่มการอ้างอิงไปยังโครงการที่คุณกําลังทดสอบ

กระบวนการนี้สร้างโครงการใหม่และกําหนดค่าตัวรันการทดสอบสําหรับกรอบงานที่เลือก

สร้างกรณีการทดสอบหน่วยโดยใช้ GitHub Copilot Chat

GitHub Copilot Chat สามารถใช้เพื่อช่วยให้คุณเขียนกรณีการทดสอบหน่วยสําหรับเฟรมเวิร์กการทดสอบของคุณได้ Copilot Chat จดจําเฟรมเวิร์กการทดสอบและสไตล์การเข้ารหัสของคุณ และสร้างส่วนย่อยของโค้ดที่ตรงกัน คุณสามารถใช้ Copilot Chat เพื่อทํางานต่อไปนี้ให้เสร็จสมบูรณ์:

  • เขียนกรณีการทดสอบหน่วยสําหรับเฟรมเวิร์กการทดสอบของคุณตามโค้ดที่เปิดอยู่ในตัวแก้ไขหรือส่วนย่อยของโค้ดที่คุณไฮไลต์ในตัวแก้ไข Copilot ระบุเฟรมเวิร์กการทดสอบและสไตล์การเข้ารหัสของคุณ และสร้างส่วนย่อยของโค้ดที่ตรงกัน

  • ระบุและเขียนกรณีการทดสอบสําหรับกรณีขอบและเงื่อนไขขอบเขตที่อาจยากต่อการระบุด้วยตนเอง ตัวอย่างเช่น Copilot สามารถแนะนํากรณีทดสอบสําหรับการจัดการข้อผิดพลาด ค่า null หรือชนิดอินพุตที่ไม่คาดคิด

  • แนะนําการยืนยันเพื่อให้แน่ใจว่าฟังก์ชันทํางานได้อย่างถูกต้องตามบริบทและความหมายของโค้ด ตัวอย่างเช่น สร้างการยืนยันเพื่อให้แน่ใจว่าพารามิเตอร์การป้อนข้อมูลของฟังก์ชันถูกต้อง

พิจารณาสถานการณ์ต่อไปนี้เมื่อขอให้ Copilot Chat สร้างกรณีการทดสอบหน่วย:

  • หากเห็นหนึ่งวิธีในตัวแก้ไขแบบเต็ม คุณสามารถขอให้ Copilot Chat สร้างการทดสอบหน่วยสำหรับวิธีการนั้นโดยการพิมพ์ Write a unit test for the method in the #editor

  • หากมีหลายวิธีการที่มองเห็นได้หรือวิธีการที่ตั้งใจไว้ขยายเกินสิ่งที่มองเห็นในตัวแก้ไข ให้เลือกโค้ดที่คุณต้องการสร้างการทดสอบหน่วย จากนั้นถาม Copilot: #selection write a unit test for this code

เรียกใช้และจัดการการทดสอบหน่วยใน Visual Studio Code

Visual Studio Code และ C# Dev Kit มีชุดคุณลักษณะมากมายเพื่อช่วยให้คุณเรียกใช้และจัดการการทดสอบหน่วยสําหรับโครงการ C# ของคุณ คุณสามารถเรียกใช้/ดีบักกรณีทดสอบ ดูผลลัพธ์การทดสอบ และจัดการกรณีทดสอบโดยใช้ Test Explorer

  • กรณีทดสอบการเรียกใช้/แก้จุดบกพร่อง: C# Dev Kit จะสร้างทางลัด (ปุ่มเล่นสีเขียว) ทางด้านซ้ายของข้อกําหนดคลาสและเมธอด หากต้องการเรียกใช้กรณีทดสอบเป้าหมาย ให้เลือกปุ่มเล่นสีเขียว คุณยังสามารถคลิกขวาเพื่อดูตัวเลือกเพิ่มเติม

  • Test Explorer: Test Explorer เป็นมุมมองแบบทรีเพื่อแสดงกรณีการทดสอบทั้งหมดในพื้นที่ทํางานของคุณ คุณสามารถเลือกปุ่มบีกเกอร์บนแถบกิจกรรมด้านซ้ายของรหัส Visual Studio เพื่อเปิด คุณยังสามารถเรียกใช้/ดีบักกรณีทดสอบของคุณ และดูผลลัพธ์การทดสอบจากที่นั่นได้

  • ดูผลลัพธ์การทดสอบ: หลังจากเรียกใช้/ดีบักกรณีการทดสอบ สถานะของรายการทดสอบที่เกี่ยวข้องจะได้รับการอัปเดตในการตกแต่งของตัวแก้ไขและ Test Explorer คุณสามารถเลือกลิงก์ในการติดตามสแตกเพื่อไปที่ตำแหน่งที่ตั้งของแหล่งข้อมูล

  • คําสั่งทดสอบรหัส Visual Studio: มีคําสั่งทดสอบ (ตัวอย่างเช่น เรียกใช้การทดสอบทั้งหมด) ที่สามารถพบได้โดยการค้นหา การทดสอบ: ใน Command Palette

  • การตั้งค่าการทดสอบรหัส Visual Studio: มีการตั้งค่า Visual Studio Code เฉพาะสําหรับการทดสอบที่สามารถพบได้โดยการค้นหาการทดสอบในตัวแก้ไขการตั้งค่า

สรุป

GitHub Copilot Chat สามารถใช้เพื่อแนะนําการทดสอบหน่วยตามโค้ดที่คุณระบุ ตัวอย่างเช่น ถ้าคุณระบุลายเซ็นและเนื้อความของเมธอด GitHub Copilot Chat สามารถแนะนํากรณีการทดสอบที่ครอบคลุมพารามิเตอร์การป้อนข้อมูลและค่าเอาต์พุตที่คาดไว้ได้ เมื่อโครงการทดสอบของคุณประกอบด้วยกรณีการทดสอบสองสามกรณี คุณสามารถใช้ GitHub Copilot เพื่อสร้างคําแนะนําการกรอกโค้ดสําหรับกรณีทดสอบเพิ่มเติมได้ การใช้การเสร็จสมบูรณ์ของเส้นโค้ดเพื่อสร้างการทดสอบหน่วยจะลดกระบวนการซ้ํา ๆ และช่วยให้แน่ใจว่ารหัสของคุณได้รับการทดสอบอย่างละเอียด

GitHub Copilot Chat ใช้บริบทและความหมายของโค้ดคุณเพื่อแนะนําการยืนยันว่าฟังก์ชันทํางานได้อย่างถูกต้อง นอกจากนี้ยังช่วยให้คุณสามารถเขียนกรณีการทดสอบสําหรับกรณีขอบและเงื่อนไขขอบเขตที่อาจยากต่อการระบุด้วยตนเอง ตัวอย่างเช่น GitHub Copilot Chat สามารถแนะนํากรณีการทดสอบสําหรับการจัดการข้อผิดพลาด ค่า null หรือชนิดการป้อนข้อมูลที่ไม่คาดคิด