Membuat dan menjalankan pengujian unit menggunakan pengujian GitHub Copilot untuk .NET

Tingkatkan keyakinan pada kualitas kode Anda dan tingkatkan cakupan pengujian Anda dengan membuat dan menjalankan pengujian unit menggunakan pengujian GitHub Copilot untuk .NET.

Meskipun Copilot dapat menghasilkan pengujian unit, Anda mendapatkan kemampuan pengujian ekstra dengan menggunakan pengujian GitHub Copilot untuk .NET di Visual Studio, termasuk yang berikut ini:

  • Pengujian unit dihasilkan dalam proyek terpisah dalam solusi.
  • Copilot menghasilkan pengujian secara deterministik, tertanam dalam kompilator C# dan semantik bahasa, sehingga asersi dan kasus tepi dapat diprediksi dan aman terhadap tipe data.
  • Uji coba GitHub Copilot membangun uji unit setelah pembuatan pengujian. Jika ada kesalahan, kemampuan pengujian unit di GitHub Copilot untuk .NET mencoba mengidentifikasi dan memperbaiki kesalahan, lalu menjalankan kembali pengujian.
  • Pengujian GitHub Copilot menjalankan pengujian menggunakan Test Explorer.

Pengujian GitHub Copilot untuk .NET menghasilkan pengujian untuk proyek C# hanya menggunakan kerangka kerja MSTest, NUnit, dan xUnit. Jika solusi sudah memiliki pengujian unit di NUnit atau xUnit, pengujian GitHub Copilot untuk .NET menghasilkan pengujian baru dalam kerangka kerja pengujian unit yang sama. Jika tidak ada pengujian unit dalam solusi, pengujian baru dihasilkan menggunakan MSTest.

Prasyarat

Untuk memulai, Anda memerlukan:

Nota

Pengujian GitHub Copilot untuk .NET memerlukan langganan GitHub Copilot berbayar (individu, bisnis, atau perusahaan). Langganan Copilot gratis tidak didukung.

Untuk pengenalan pengujian unit, lihat Dasar-dasar pengujian unit.

Cara memulai pengujian GitHub Copilot

Anda dapat memulai pengujian GitHub Copilot untuk .NET dengan beberapa cara:

  • Dari Obrolan Copilot, ketik @Test diikuti oleh target atau prompt di jendela obrolan.
  • Dari editor, klik kanan untuk membuka menu konteks dan pilih Tindakan Copilot>Hasilkan Pengujian.
  • Di percakapan Obrolan Copilot baru, pilih Tulis pengujian unit dari saran pemecah kebekuan Obrolan Copilot.

Nota

Menu konteks dan opsi pemecah es merutekan @Test ke agen secara otomatis ketika fokus IDE Anda adalah pada kode C#. Untuk proyek non-C#, opsi ini menggunakan perintah Copilot generik sebagai gantinya.

Sintaks perintah

Pengujian GitHub Copilot mendukung dua metode permintaan: sintaks terstruktur dan perintah bentuk bebas.

Sintaks terstruktur

@Test #<target> Gunakan sintaks untuk menghasilkan pengujian untuk elemen kode tertentu:

@Test #<target>

Tempat di mana #<target> dapat berupa:

  • Anggota, kelas, file, proyek, atau solusi
  • Diff git untuk menguji perubahan Anda saat ini (#git_changes)
  • Beberapa input dengan jenis yang sama (misalnya, beberapa kelas atau beberapa file)

Nota

Jenis input campuran tidak didukung. Misalnya, Anda tidak dapat menggabungkan file dan proyek dalam perintah yang sama.

contoh :

  • @Test #BankAccount — Hasilkan pengujian untuk kelas BankAccount
  • @Test #git_changes — Buat pengujian untuk perubahan Anda saat ini yang belum dikomit
  • @Test #MyProject — Hasilkan pengujian untuk semua kode di MyProject

Permintaan bebas

Gunakan bahasa alami untuk menjelaskan apa yang ingin Anda uji:

@Test <your prompt>

contoh :

Cepat Description
@Test class Foo Membuat pengujian untuk kelas tertentu
@Test generate tests for the core logic in my #solution Menargetkan area tertentu dari basis kode Anda
@Test write unit tests for my current changes Hasilkan pengujian untuk perubahan git yang tidak dilakukan
@Test fix my failing tests Minta Copilot untuk memperbaiki pengujian yang gagal
@Test class Bar, targeting 80% code coverage Tentukan target cakupan
@Test use xUnit with FluentAssertions Menentukan kerangka kerja dan konvensi pengujian

Petunjuk / Saran

Anda dapat memberikan instruksi khusus tentang kerangka kerja pengujian, pustaka tiruan, gaya pernyataan, dan konvensi pengujian dalam perintah bentuk bebas Anda.

Perintah tambahan

Pengujian GitHub Copilot menyediakan perintah untuk membantu dan mengelola preferensi:

Command Description
@Test /help Menampilkan pesan bantuan dengan perintah dan sintaks yang tersedia
@Test /clear-preferences Menghapus preferensi pengguna yang disimpan, termasuk pengaturan persetujuan

Membuat dan menjalankan pengujian

  1. Buka proyek C# yang sudah ada yang membutuhkan pengujian baru.

    Jika Anda tidak memiliki proyek yang sudah ada, Anda dapat membuat proyek baru lalu menggunakan kode aplikasi sampel Bank untuk bereksperimen dengan pengujian unit. Salin kode sampel awal dari Buat dan jalankan pengujian unit untuk .NET ke dalam Program.cs.

  2. Bangun proyek.

    Pastikan proyek dibangun tanpa kesalahan untuk menyederhanakan proses.

  3. Di Visual Studio, pilih Tampilkan > GitHub Copilot Chat.

  4. Gunakan salah satu metode yang diminta untuk memulai pengujian GitHub Copilot.

    Untuk aplikasi sampel Bank, gunakan salah satu opsi berikut:

    • Terstruktur: @Test #BankAccount
    • Bentuk bebas: @Test generate comprehensive tests for the BankAccount class

    Nota

    Anda dapat berada dalam Mode Tanya atau Mode Agen saat memasukkan perintah @Test. Hasilnya tidak berbeda.

    Perintah Uji muncul di obrolan sebagai berikut, menunjukkan bahwa perintah dikenali.

    Cuplikan layar perintah untuk menghasilkan pengujian.

  5. Di jendela Obrolan, pilih Kirim.

    Pengujian GitHub Copilot untuk .NET memulai proses iteratif menganalisis kode Anda, membuat proyek baru untuk pengujian unit, menghasilkan pengujian, membangun, dan menjalankan pengujian.

    Pembuatan pengujian adalah proses yang berjalan lama. Tergantung pada cakupan target Anda (file, proyek, solusi, dll.) mungkin perlu waktu cukup lama.

    Cuplikan layar Copilot memulai pembuatan pengujian.

    Ketika pengujian unit dihasilkan, pengujian muncul dalam proyek uji terpisah di dalam solusi.

    Cuplikan layar pengujian sampel yang dihasilkan.

    Test Explorer menunjukkan hasilnya. Jika Test Explorer tidak dibuka secara otomatis oleh pengujian GitHub Copilot, pilih Test>Test Explorer.

    Cuplikan layar output Test Explorer.

    Pada titik ini, Anda dapat menggunakan Test Explorer secara manual untuk terus menjalankan pengujian, atau mengobrol dengan Copilot tentang hasil pengujian. Anda juga dapat menggunakan Copilot untuk men-debug pengujian yang gagal. Untuk informasi selengkapnya, lihat Pengujian unit debug.