Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Dalam artikel ini, Anda akan mempelajari cara men-debug dengan lebih efisien menggunakan GitHub Copilot. Copilot dapat memberikan perbaikan kode bersama dengan analisis mendalam dan penjelasan tentang cara kerja kode. Ini membantu dengan usulan perbaikan pada bug, dan menjelaskan hal-hal seperti pengecualian. Copilot memahami tumpukan panggilan, kerangka, nama variabel, dan nilai. Akibatnya, Anda dapat berinteraksi dengan AI sadar debugger untuk mengajukan pertanyaan terperinci yang terkait dengan kode Anda dan untuk men-debug masalah secara umum.
Selain itu, Copilot memberikan bantuan yang lebih tepat untuk beberapa skenario khusus, seperti skenario Pengecualian, dan semua yang telah dijelaskan dalam skenario penelusuran kesalahan yang ditingkatkan oleh AI. Dalam sebagian besar skenario ini, cari Tanya Copilot
. Dalam skenario ini, Copilot sudah mengetahui konteks untuk pertanyaan Anda.
Untuk informasi selengkapnya tentang Sugesti Penyelesaian Kode GitHub di Visual Studio, lihat Tentang Sugesti Penyelesaian Kode GitHub di Visual Studio.
Prasyarat
Untuk memulai, Anda memerlukan:
Visual Studio 2022 versi 17.8 atau yang lebih baru
Masuk ke Visual Studio menggunakan akun GitHub dengan akses Copilot
** Anda dapat menggunakan GitHub Copilot secara gratis. Daftar dan manfaatkan AI untuk mengodekan lebih cepat dan lebih efisien.Nota
Jika Anda mengalami masalah autentikasi setelah menginstal ekstensi, lihat Memecahkan masalah autentikasi dengan GitHub Copilot Chat.
Skenario yang disempurnakan AI
Copilot memahami tumpukan panggilan, kerangka, nama variabel, dan nilai. Akibatnya, Anda dapat berinteraksi dengan AI sadar debugger untuk mengajukan pertanyaan terperinci yang terkait dengan kode Anda dan untuk men-debug masalah secara umum.
Selain itu, Copilot memberikan bantuan yang lebih tepat untuk beberapa skenario yang ditargetkan, seperti yang dijelaskan dalam tabel berikut.
| Fitur atau skenario | Tautan |
|---|---|
| Pengecualian | Lihat Debug pengecualian dengan Copilot di artikel ini. Bantuan terkait pengecualian mencakup bantuan terkait kesalahan deteksi kebuntuan. |
| Variabel | Lihat Mendapatkan bantuan AI. |
| Analisis kueri LINQ | Arahkan mouse ke atas kueri LINQ saat menelusuri kesalahan di editor kode untuk melihat nilai yang dikembalikan. Pilih tombol Analisis dengan Copilot untuk bantuan AI. Lihat Menampilkan nilai pengembalian kueri LINQ. |
| Kiat data | Lihat Dapatkan bantuan AI dengan Tips Data. |
| Titik henti kondisional dan titik pelacakan | Lihat Dapatkan saran dengan titik henti bersyarat dan titik pelacakan dalam artikel ini. |
| Tindakan Cepat (bola lampu) | Lihat Mendapatkan bantuan AI dengan Tindakan Cepat. |
| Visualizer IEnumerable tabular | Lihat Mendapatkan bantuan AI. |
| Nilai pengembalian dalam baris | Lihat Menampilkan nilai pengembalian panggilan metode. |
| Nilai sebaris | Lihat Menampilkan nilai sebaris. |
| Debugging multithreaded | Lihat Mendapatkan bantuan AI dengan tampilan Utas. |
| Pengujian unit | Lihat Mendapatkan bantuan AI untuk men-debug pengujian |
| Memeriksa pengecualian dengan konteks repositori | Lihat Mendapatkan bantuan AI dengan konteks repositori |
| Pemecahan Masalah Titik Jeda | Lihat Mendapatkan bantuan AI. |
Dalam sebagian besar skenario ini, Anda mendapatkan bantuan yang ditargetkan dengan menggunakan atau Screenshot of Ask Copilot button.Tombol Analisis dengan Copilot. Copilot sudah mengetahui konteks untuk pertanyaan Anda. Misalnya, ia mengetahui tumpukan panggilan saat ini, baris kode yang Anda tanyakan, dan nama pengecualian (jika terjadi), sehingga Anda tidak perlu memberikan konteks sendiri dalam obrolan. Copilot juga memberikan saran untuk penggunaan titik henti dan titik pelacakan bersyarat.
Debug menggunakan Copilot
Contoh sederhana berikut menunjukkan cara mendapatkan bantuan AI menggunakan tampilan Obrolan sebaris.
Nota
Anda juga bisa mendapatkan bantuan menggunakan jendela Obrolan terpisah dengan memilih Lihat > GitHub Copilot Chat. Untuk informasi selengkapnya, lihat Apa itu ekstensi GitHub Copilot Chat untuk Visual Studio?.
Memulai sesi debug
Di Visual Studio, buat aplikasi Konsol C# baru.
Pada jendela mulai, pilih Buat proyek baru. Ketik konsol di kotak pencarian, pilih C# sebagai bahasa, lalu pilih Console App untuk .NET. Pilih Berikutnya. Ketik nama proyek seperti ConsoleApp_Copilot dan pilih Berikutnya.
Pilih kerangka kerja target yang direkomendasikan atau .NET 8, lalu pilih Buat.
Jika Anda tidak melihat templat proyek Aplikasi Konsol untuk .NET, buka alat >Dapatkan Alat dan Fitur, yang membuka Alat Penginstal Visual Studio. Pilih beban kerja pengembangan desktop .NET, lalu pilih Ubah.
Visual Studio membuat proyek konsol, yang muncul di Penjelajah Solusi di panel kanan.
Ganti kode di Program.cs dengan kode berikut:
using System; using System.Collections.Generic; public class Example { public static void Main(string[] args) { int value = Int32.Parse(args[0]); List<String> names = null; if (value > 0) names = new List<String>(); names.Add("Major Major Major"); } }Klik kanan pernyataan berikut dan pilih Titik Henti >Sisipkan Titik Henti.
int value = Int32.Parse(args[0]);Tekan F5 atau pilih Mulai Debugging dari menu Debug.
Aplikasi berhenti sejenak di titik henti. Jendela Otomatis menunjukkan bahwa variabel args memiliki nilai
string[0].
Klik kanan dalam kode dan pilih Minta Copilot untuk membuka tampilan obrolan langsung.
Saran
Atau, Anda dapat mengklik kanan variabel di jendela Autos atau Locals, atau di tip data, dan memilih Tanya Copilot. Ini menyediakan Copilot dengan nama variabel dan konteks, sehingga Anda tidak perlu memberikan konteks sendiri dalam obrolan.
Ketik pertanyaan berikut dalam tampilan Obrolan sebaris:
Why does the args variable have a value of string[0]?
Saat Anda menekan Enter, Copilot memberikan jawaban berdasarkan pemahamannya tentang kode Anda. (Anda mungkin mendapatkan respons yang berbeda dari apa yang ditunjukkan di sini.)
Jika Copilot memiliki perbaikan yang disarankan untuk kode Anda, akan ditampilkan kepada Anda. Jika tidak, Anda dapat meminta Copilot untuk rekomendasi kode.
Saran
Dalam Chat sebaris, gunakan simbol "#" dan pilih dari daftar drop-down untuk menyampaikan informasi tertentu ke Copilot saat Anda merujuknya dalam pertanyaan Anda. Misalnya, jika Anda memilih sebagian kode, lalu mengetik #, Anda dapat memilih pilihan tersebut dari daftar drop-down #. Anda juga dapat menggunakan simbol "#" untuk mereferensikan fitur IDE yang muncul di daftar drop-down, seperti jendela Lokal.
Dalam contoh ini, gulir ke akhir jawaban Copilot dan pilih pertanyaan tindak lanjut di akhir jendela Obrolan sebaris, "Bagaimana cara menangani kasus ketika tidak ada argumen yang diteruskan ke program?"
Copilot menunjukkan perbaikan yang disarankan untuk kode Anda.
Jika Anda ingin menerapkan perbaikan kode, pilih Terima.
Pilih Batalkan sehingga kami dapat terus mempelajari fitur Copilot lainnya di bagian berikutnya.
Memecahkan masalah kesalahan dengan Copilot
Contoh sederhana berikut menunjukkan cara mendapatkan bantuan AI saat Anda menemukan pengecualian dan cara memperbarui kode Anda dengan cepat berdasarkan perbaikan yang disarankan AI.
Memulai sesi debug
Saat dijeda di debugger menggunakan aplikasi sampel yang sama, tekan F11 atau Debug>Masuk untuk menjalankan pernyataan saat ini.
IndexOutOfRangeExceptionmuncul dan aplikasi berhenti sementara, memperlihatkan pengecualian.Untuk mendapatkan bantuan AI untuk pengecualian, lanjutkan ke bagian berikutnya.
Minta bantuan AI
Dengan aplikasi dijeda saat terjadi pengecualian, pilih tombol Ask Copilot.
Jika belum dibuka, jendela Obrolan Copilot muncul dan memberikan penilaian atas kesalahan tersebut dan mengapa hal itu terjadi. Dalam contoh ini, Copilot mengidentifikasi perbaikan kode yang disarankan, tombol untuk menyalin kode, dan tombol Pratinjau untuk perbaikan kode.
Jika Anda memiliki pertanyaan tentang pengecualian, tanyakan pada kotak teks Tanya Copilot.
Pilih tombol Pratinjau.
Visual Studio menampilkan pratinjau kode dengan perbaikan yang disarankan.
Tinjau perbaikan yang disarankan dan pilih Terima untuk menerapkan saran kode.
Mulai ulang debugger.
Kali ini, tidak ada pengecualian yang terjadi. Sudah diperbaiki!
Dapatkan saran dengan titik henti bersyarat dan titik pelacakan bersyarat
Copilot memberi Anda saran untuk titik henti bersyarat dan titik pelacakan yang khusus untuk kode Anda.
Dalam contoh ini, kami menunjukkan saran AI untuk titik henti bersyarat. Untuk titik jejak, bantuan AI bekerja dengan cara yang sama.
Hapus titik henti saat ini dengan mengkliknya atau klik kanan dan pilih Hapus Titik Henti.
Ganti baris kode berikut:
names.Add("Major Major Major");dengan ini:
// names.Add("Major Major Major"); foreach (var item in args) { names.Add("Name: " + item); }Di sebelah kiri pernyataan
names.Add("Name: " + item), klik kanan di tepi editor dan pilih Sisipkan Titik Henti Bersyarat.Pilih bidang ekspresi dan Copilot mulai mengerjakan saran.
Saat saran muncul, pilih saran seperti
item == "John". Sunting usulan agar namanyaFred.
Untuk menguji ekspresi kondisional.
Klik kanan proyek ConsoleApp_Copilot di Penjelajah Solusi dan pilih properti .
Pilih Debug>General>Buka antarmuka profil peluncuran debug.
Di bidang argumen baris perintah , masukkan
5 Fred Joepada tiga baris terpisah.
Mulai ulang debugger.
Saat debugger berhenti sejenak di titik henti, periksa nilai
itemdan verifikasi bahwa nilai saat iniFred.