Bagikan melalui


Tutorial: Men-debug aplikasi konsol .NET menggunakan Visual Studio Code

Tutorial ini memperkenalkan alat penelusuran kesalahan yang tersedia di Visual Studio Code untuk bekerja dengan aplikasi .NET.

Prasyarat

Menggunakan konfigurasi build Debug

Debug dan Rilis adalah . Konfigurasi build bawaan NET. Anda menggunakan konfigurasi build Debug untuk penelusuran kesalahan dan konfigurasi Rilis untuk distribusi rilis akhir.

Dalam konfigurasi Debug, program dikompilasi dengan informasi debug simbolis penuh dan tidak ada pengoptimalan. Pengoptimalan mempersulit penelusuran kesalahan, karena hubungan antara kode sumber dan instruksi yang dibuat lebih kompleks. Konfigurasi rilis program tidak memiliki informasi debug simbolis dan sepenuhnya dioptimalkan.

Secara default, pengaturan peluncuran Visual Studio Code menggunakan konfigurasi build Debug, sehingga Anda tidak perlu mengubahnya sebelum penelusuran kesalahan.

  1. Memulai Visual Studio Code.

  2. Buka folder proyek yang Anda buat di Membuat aplikasi konsol .NET menggunakan Visual Studio Code.

Menetapkan titik henti

Titik henti untuk sementara mengganggu eksekusi aplikasi sebelum baris dengan titik henti dijalankan.

  1. Buka file Program.cs.

  2. Atur titik henti pada baris yang menampilkan nama, tanggal, dan waktu, dengan mengklik di margin kiri jendela kode. Margin kiri berada di sebelah kiri nomor baris. Cara lain untuk mengatur titik henti adalah dengan menekan F9 atau memilih Jalankan>Ganti Titik Henti dari menu saat baris kode dipilih.

    Visual Studio Code menunjukkan garis tempat titik henti diatur dengan menampilkan titik merah di margin kiri.

    Breakpoint set

Menyiapkan untuk input terminal

Titik henti terletak setelah Console.ReadLine panggilan metode. Konsol Debug tidak menerima input terminal untuk program yang sedang berjalan. Untuk menangani input terminal saat penelusuran kesalahan, Anda dapat menggunakan terminal terintegrasi (salah satu jendela Visual Studio Code) atau terminal eksternal. Untuk tutorial ini, Anda menggunakan terminal terintegrasi.

  1. Folder proyek berisi folder .vscode . Buka file launch.json yang ada di folder .vscode.

  2. Di launch.json, ubah console pengaturan dari internalConsole ke integratedTerminal:

    "console": "integratedTerminal",
    
  3. Simpan perubahan Anda.

Mulai penelusuran kesalahan

  1. Buka tampilan Debug dengan memilih ikon Debugging di menu sisi kiri.

    Open the Debug tab in Visual Studio Code

  2. Pilih panah hijau di bagian atas panel, di samping .NET Core Launch (konsol). Cara lain untuk memulai program dalam mode penelusuran kesalahan adalah dengan menekan F5 atau memilih Jalankan>Mulai Debugging dari menu.

    Start debugging

  3. Pilih tab Terminal untuk melihat perintah "Apa nama Anda?" yang ditampilkan program sebelum menunggu respons.

    Select the Terminal tab

  4. Masukkan string di jendela Terminal sebagai respons terhadap perintah untuk nama, lalu tekan Enter.

    Eksekusi program berhenti ketika mencapai titik henti dan sebelum Console.WriteLine metode berjalan. Bagian Lokal dari jendela Variabel menampilkan nilai variabel yang ditentukan dalam metode yang sedang berjalan.

    Breakpoint hit, showing Locals

Menggunakan Konsol Debug

Jendela Konsol Debug memungkinkan Anda berinteraksi dengan aplikasi yang Sedang Anda debug. Anda dapat mengubah nilai variabel untuk melihat pengaruhnya terhadap program Anda.

  1. Pilih tab Konsol Debug.

  2. Masukkan name = "Gracie" pada perintah di bagian bawah jendela Konsol Debug dan tekan tombol Enter .

    Change variable values

  3. Masukkan currentDate = DateTime.Parse("2019-11-16T17:25:00Z").ToUniversalTime() di bagian bawah jendela Konsol Debug dan tekan tombol Enter .

    Jendela Variabel menampilkan nilai baru variabel name dan currentDate .

  4. Lanjutkan eksekusi program dengan memilih tombol Lanjutkan di bilah alat. Cara lain untuk melanjutkan adalah dengan menekan F5.

    Continue debugging

  5. Pilih tab Terminal lagi.

    Nilai yang ditampilkan di jendela konsol sesuai dengan perubahan yang Anda buat di Konsol Debug.

    Terminal showing the entered values

  6. Tekan tombol apa pun untuk keluar dari aplikasi dan hentikan penelusuran kesalahan.

Mengatur titik henti bersyarah

Program menampilkan untai (karakter) yang dimasukkan pengguna. Apa yang terjadi jika pengguna tidak memasukkan apa pun? Anda dapat menguji ini dengan fitur penelusuran kesalahan yang berguna yang disebut titik henti kondisional.

  1. Klik kanan (Ctrl-klik pada macOS) pada titik merah yang mewakili titik henti. Di menu konteks, pilih Edit Titik Henti untuk membuka dialog yang memungkinkan Anda memasukkan ekspresi bersyarah.

    Breakpoint context menu

  2. Pilih Expression di menu drop-down, masukkan ekspresi bersyarah berikut, dan tekan Enter.

    String.IsNullOrEmpty(name)
    

    Enter a conditional expression

    Setiap kali titik henti tertembak, debugger memanggil String.IsNullOrEmpty(name) metode , dan berhenti pada baris ini hanya jika panggilan metode mengembalikan true.

    Alih-alih ekspresi kondisional, Anda dapat menentukan hit count, yang mengganggu eksekusi program sebelum pernyataan dijalankan beberapa kali. Opsi lain adalah menentukan kondisi filter, yang mengganggu eksekusi program berdasarkan atribut seperti pengidentifikasi utas, nama proses, atau nama utas.

  3. Mulai program dengan penelusuran kesalahan dengan menekan F5.

  4. Di tab Terminal , tekan tombol Enter saat diminta untuk memasukkan nama Anda.

    Karena kondisi yang Anda tentukan (name adalah null atau String.Empty) telah terpenuhi, eksekusi program berhenti ketika mencapai titik henti dan sebelum Console.WriteLine metode berjalan.

    Jendela Variabel menunjukkan bahwa nilai name variabel adalah "", atau String.Empty.

  5. Konfirmasikan nilainya adalah string kosong dengan memasukkan pernyataan berikut di prompt Konsol Debug dan menekan Enter. Hasilnya adalah true.

    name == String.Empty
    
  6. Pilih tombol Lanjutkan pada toolbar untuk melanjutkan eksekusi program.

  7. Pilih tab Terminal , dan tekan tombol apa pun untuk keluar dari program dan hentikan penelusuran kesalahan.

  8. Kosongkan titik henti dengan mengklik titik di margin kiri jendela kode. Cara lain untuk menghapus titik henti adalah dengan menekan F9 atau memilih Jalankan > Ganti Titik Henti dari menu saat baris kode dipilih.

  9. Jika Anda mendapatkan peringatan bahwa kondisi titik henti akan hilang, pilih Hapus Titik Henti.

Menelusuri program

Visual Studio Code juga memungkinkan Anda untuk melangkah baris demi baris melalui program dan memantau eksekusinya. Biasanya, Anda akan mengatur titik henti dan mengikuti alur program melalui sebagian kecil kode program Anda. Karena program ini kecil, Anda dapat menelusuri seluruh program.

  1. Atur titik henti pada kurung Main kurawal pembuka metode.

  2. Tekan F5 untuk mulai penelusuran kesalahan.

    Visual Studio Code menyoroti garis titik henti.

    Pada titik ini, jendela Variabel menunjukkan bahwa args array kosong, dan name currentDate memiliki nilai default.

  3. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Step-Into button

    Visual Studio Code menyoroti baris berikutnya.

  4. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Visual Studio Code menjalankan Console.WriteLine untuk perintah nama dan menyoroti baris eksekusi berikutnya. Baris berikutnya adalah Console.ReadLine untuk name. Jendela Variabel tidak berubah, dan tab Terminal menunjukkan perintah "Apa nama Anda?".

  5. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Visual Studio menyoroti penetapan name variabel. Jendela Variabel menunjukkan bahwa name masih null.

  6. Tanggapi perintah dengan memasukkan string di tab Terminal dan menekan Enter.

    Tab Terminal mungkin tidak menampilkan string yang Anda masukkan saat Anda memasukkannya, tetapi Console.ReadLine metode akan mengambil input Anda.

  7. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Visual Studio Code menyoroti penetapan currentDate variabel. Jendela Variabel menunjukkan nilai yang dikembalikan oleh panggilan ke Console.ReadLine metode . Tab Terminal menampilkan string yang Anda masukkan saat diminta.

  8. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Jendela Variabel menunjukkan nilai currentDate variabel setelah penugasan dari DateTime.Now properti .

  9. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Visual Studio Code memanggil Console.WriteLine(String, Object, Object) metode . Jendela konsol menampilkan string yang diformat.

  10. Pilih Jalankan>Langkah Keluar atau tekan Shift+F11.

    Step-Out button

  11. Pilih tab Terminal .

    Terminal menampilkan "Tekan tombol apa pun untuk keluar..."

  12. Tekan tombol apa pun untuk keluar dari program.

Menggunakan konfigurasi build Rilis

Setelah menguji versi Debug aplikasi, Anda juga harus mengkompilasi dan menguji versi Rilis. Versi Rilis menggabungkan pengoptimalan pengkompilasi yang dapat memengaruhi perilaku aplikasi. Misalnya, pengoptimalan kompilator yang dirancang untuk meningkatkan performa dapat menciptakan kondisi balapan di aplikasi multithread.

Untuk membangun dan menguji versi Rilis aplikasi konsol Anda, buka Terminal dan jalankan perintah berikut:

dotnet run --configuration Release

Sumber Daya Tambahan:

Langkah berikutnya

Dalam tutorial ini, Anda menggunakan alat penelusuran kesalahan Visual Studio Code. Dalam tutorial berikutnya, Anda menerbitkan versi aplikasi yang dapat disebarkan.

Tutorial ini memperkenalkan alat penelusuran kesalahan yang tersedia di Visual Studio Code untuk bekerja dengan aplikasi .NET.

Prasyarat

Menggunakan konfigurasi build Debug

Debug dan Rilis adalah . Konfigurasi build bawaan NET. Anda menggunakan konfigurasi build Debug untuk penelusuran kesalahan dan konfigurasi Rilis untuk distribusi rilis akhir.

Dalam konfigurasi Debug, program dikompilasi dengan informasi debug simbolis penuh dan tidak ada pengoptimalan. Pengoptimalan mempersulit penelusuran kesalahan, karena hubungan antara kode sumber dan instruksi yang dibuat lebih kompleks. Konfigurasi rilis program tidak memiliki informasi debug simbolis dan sepenuhnya dioptimalkan.

Secara default, pengaturan peluncuran Visual Studio Code menggunakan konfigurasi build Debug, sehingga Anda tidak perlu mengubahnya sebelum penelusuran kesalahan.

  1. Memulai Visual Studio Code.

  2. Buka folder proyek yang Anda buat di Membuat aplikasi konsol .NET menggunakan Visual Studio Code.

Menetapkan titik henti

Titik henti untuk sementara mengganggu eksekusi aplikasi sebelum baris dengan titik henti dijalankan.

  1. Buka file Program.cs.

  2. Atur titik henti pada baris yang menampilkan nama, tanggal, dan waktu, dengan mengklik di margin kiri jendela kode. Margin kiri berada di sebelah kiri nomor baris. Cara lain untuk mengatur titik henti adalah dengan menekan F9 atau memilih Jalankan>Ganti Titik Henti dari menu saat baris kode dipilih.

    Visual Studio Code menunjukkan garis tempat titik henti diatur dengan menampilkan titik merah di margin kiri.

    Breakpoint set

Menyiapkan untuk input terminal

Titik henti terletak setelah Console.ReadLine panggilan metode. Konsol Debug tidak menerima input terminal untuk program yang sedang berjalan. Untuk menangani input terminal saat penelusuran kesalahan, Anda dapat menggunakan terminal terintegrasi (salah satu jendela Visual Studio Code) atau terminal eksternal. Untuk tutorial ini, Anda menggunakan terminal terintegrasi.

  1. Folder proyek berisi folder .vscode . Buka file launch.json yang ada di folder .vscode.

  2. Di launch.json, ubah console pengaturan dari internalConsole ke integratedTerminal:

    "console": "integratedTerminal",
    
  3. Simpan perubahan Anda.

Mulai penelusuran kesalahan

  1. Buka tampilan Debug dengan memilih ikon Debugging di menu sisi kiri.

    Open the Debug tab in Visual Studio Code

  2. Pilih panah hijau di bagian atas panel, di samping .NET Core Launch (konsol). Cara lain untuk memulai program dalam mode penelusuran kesalahan adalah dengan menekan F5 atau memilih Jalankan>Mulai Debugging dari menu.

    Start debugging

  3. Pilih tab Terminal untuk melihat perintah "Apa nama Anda?" yang ditampilkan program sebelum menunggu respons.

    Select the Terminal tab

  4. Masukkan string di jendela Terminal sebagai respons terhadap perintah untuk nama, lalu tekan Enter.

    Eksekusi program berhenti ketika mencapai titik henti dan sebelum Console.WriteLine metode berjalan. Bagian Lokal dari jendela Variabel menampilkan nilai variabel yang ditentukan dalam metode yang sedang berjalan.

    Breakpoint hit, showing Locals

Menggunakan Konsol Debug

Jendela Konsol Debug memungkinkan Anda berinteraksi dengan aplikasi yang Sedang Anda debug. Anda dapat mengubah nilai variabel untuk melihat pengaruhnya terhadap program Anda.

  1. Pilih tab Konsol Debug.

  2. Masukkan name = "Gracie" pada perintah di bagian bawah jendela Konsol Debug dan tekan tombol Enter .

    Change variable values

  3. Masukkan currentDate = DateTime.Parse("2019-11-16T17:25:00Z").ToUniversalTime() di bagian bawah jendela Konsol Debug dan tekan tombol Enter .

    Jendela Variabel menampilkan nilai baru variabel name dan currentDate .

  4. Lanjutkan eksekusi program dengan memilih tombol Lanjutkan di bilah alat. Cara lain untuk melanjutkan adalah dengan menekan F5.

    Continue debugging

  5. Pilih tab Terminal lagi.

    Nilai yang ditampilkan di jendela konsol sesuai dengan perubahan yang Anda buat di Konsol Debug.

    Terminal showing the entered values

  6. Tekan tombol apa pun untuk keluar dari aplikasi dan hentikan penelusuran kesalahan.

Mengatur titik henti bersyarah

Program menampilkan untai (karakter) yang dimasukkan pengguna. Apa yang terjadi jika pengguna tidak memasukkan apa pun? Anda dapat menguji ini dengan fitur penelusuran kesalahan yang berguna yang disebut titik henti kondisional.

  1. Klik kanan (Ctrl-klik pada macOS) pada titik merah yang mewakili titik henti. Di menu konteks, pilih Edit Titik Henti untuk membuka dialog yang memungkinkan Anda memasukkan ekspresi bersyarah.

    Breakpoint context menu

  2. Pilih Expression di menu drop-down, masukkan ekspresi bersyarah berikut, dan tekan Enter.

    String.IsNullOrEmpty(name)
    

    Enter a conditional expression

    Setiap kali titik henti tertembak, debugger memanggil String.IsNullOrEmpty(name) metode , dan berhenti pada baris ini hanya jika panggilan metode mengembalikan true.

    Alih-alih ekspresi kondisional, Anda dapat menentukan hit count, yang mengganggu eksekusi program sebelum pernyataan dijalankan beberapa kali. Opsi lain adalah menentukan kondisi filter, yang mengganggu eksekusi program berdasarkan atribut seperti pengidentifikasi utas, nama proses, atau nama utas.

  3. Mulai program dengan penelusuran kesalahan dengan menekan F5.

  4. Di tab Terminal , tekan tombol Enter saat diminta untuk memasukkan nama Anda.

    Karena kondisi yang Anda tentukan (name adalah null atau String.Empty) telah terpenuhi, eksekusi program berhenti ketika mencapai titik henti dan sebelum Console.WriteLine metode berjalan.

    Jendela Variabel menunjukkan bahwa nilai name variabel adalah "", atau String.Empty.

  5. Konfirmasikan nilainya adalah string kosong dengan memasukkan pernyataan berikut di prompt Konsol Debug dan menekan Enter. Hasilnya adalah true.

    name == String.Empty
    
  6. Pilih tombol Lanjutkan pada toolbar untuk melanjutkan eksekusi program.

  7. Pilih tab Terminal , dan tekan tombol apa pun untuk keluar dari program dan hentikan penelusuran kesalahan.

  8. Kosongkan titik henti dengan mengklik titik di margin kiri jendela kode. Cara lain untuk menghapus titik henti adalah dengan menekan F9 atau memilih Jalankan > Ganti Titik Henti dari menu saat baris kode dipilih.

  9. Jika Anda mendapatkan peringatan bahwa kondisi titik henti akan hilang, pilih Hapus Titik Henti.

Menelusuri program

Visual Studio Code juga memungkinkan Anda untuk melangkah baris demi baris melalui program dan memantau eksekusinya. Biasanya, Anda akan mengatur titik henti dan mengikuti alur program melalui sebagian kecil kode program Anda. Karena program ini kecil, Anda dapat menelusuri seluruh program.

  1. Atur titik henti pada kurung Main kurawal pembuka metode.

  2. Tekan F5 untuk mulai penelusuran kesalahan.

    Visual Studio Code menyoroti garis titik henti.

    Pada titik ini, jendela Variabel menunjukkan bahwa args array kosong, dan name currentDate memiliki nilai default.

  3. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Step-Into button

    Visual Studio Code menyoroti baris berikutnya.

  4. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Visual Studio Code menjalankan Console.WriteLine untuk perintah nama dan menyoroti baris eksekusi berikutnya. Baris berikutnya adalah Console.ReadLine untuk name. Jendela Variabel tidak berubah, dan tab Terminal menunjukkan perintah "Apa nama Anda?".

  5. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Visual Studio menyoroti penetapan name variabel. Jendela Variabel menunjukkan bahwa name masih null.

  6. Tanggapi perintah dengan memasukkan string di tab Terminal dan menekan Enter.

    Tab Terminal mungkin tidak menampilkan string yang Anda masukkan saat Anda memasukkannya, tetapi Console.ReadLine metode akan mengambil input Anda.

  7. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Visual Studio Code menyoroti penetapan currentDate variabel. Jendela Variabel menunjukkan nilai yang dikembalikan oleh panggilan ke Console.ReadLine metode . Tab Terminal menampilkan string yang Anda masukkan saat diminta.

  8. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Jendela Variabel menunjukkan nilai currentDate variabel setelah penugasan dari DateTime.Now properti .

  9. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Visual Studio Code memanggil Console.WriteLine(String, Object, Object) metode . Jendela konsol menampilkan string yang diformat.

  10. Pilih Jalankan>Langkah Keluar atau tekan Shift+F11.

    Step-Out button

  11. Pilih tab Terminal .

    Terminal menampilkan "Tekan tombol apa pun untuk keluar..."

  12. Tekan tombol apa pun untuk keluar dari program.

Menggunakan konfigurasi build Rilis

Setelah menguji versi Debug aplikasi, Anda juga harus mengkompilasi dan menguji versi Rilis. Versi Rilis menggabungkan pengoptimalan pengkompilasi yang dapat memengaruhi perilaku aplikasi. Misalnya, pengoptimalan kompilator yang dirancang untuk meningkatkan performa dapat menciptakan kondisi balapan di aplikasi multithread.

Untuk membangun dan menguji versi Rilis aplikasi konsol Anda, buka Terminal dan jalankan perintah berikut:

dotnet run --configuration Release

Sumber Daya Tambahan:

Langkah berikutnya

Dalam tutorial ini, Anda menggunakan alat penelusuran kesalahan Visual Studio Code. Dalam tutorial berikutnya, Anda menerbitkan versi aplikasi yang dapat disebarkan.

Tutorial ini memperkenalkan alat penelusuran kesalahan yang tersedia di Visual Studio Code untuk bekerja dengan aplikasi .NET.

Prasyarat

Menggunakan konfigurasi build Debug

Debug dan Rilis adalah . Konfigurasi build bawaan NET. Anda menggunakan konfigurasi build Debug untuk penelusuran kesalahan dan konfigurasi Rilis untuk distribusi rilis akhir.

Dalam konfigurasi Debug, program dikompilasi dengan informasi debug simbolis penuh dan tidak ada pengoptimalan. Pengoptimalan mempersulit penelusuran kesalahan, karena hubungan antara kode sumber dan instruksi yang dibuat lebih kompleks. Konfigurasi rilis program tidak memiliki informasi debug simbolis dan sepenuhnya dioptimalkan.

Secara default, pengaturan peluncuran Visual Studio Code menggunakan konfigurasi build Debug, sehingga Anda tidak perlu mengubahnya sebelum penelusuran kesalahan.

  1. Memulai Visual Studio Code.

  2. Buka folder proyek yang Anda buat di Membuat aplikasi konsol .NET menggunakan Visual Studio Code.

Menetapkan titik henti

Titik henti untuk sementara mengganggu eksekusi aplikasi sebelum baris dengan titik henti dijalankan.

  1. Buka file Program.cs.

  2. Atur titik henti pada baris yang menampilkan nama, tanggal, dan waktu, dengan mengklik di margin kiri jendela kode. Margin kiri berada di sebelah kiri nomor baris. Cara lain untuk mengatur titik henti adalah dengan menekan F9 atau memilih Jalankan>Ganti Titik Henti dari menu saat baris kode dipilih.

    Visual Studio Code menunjukkan garis tempat titik henti diatur dengan menampilkan titik merah di margin kiri.

    Breakpoint set

Menyiapkan untuk input terminal

Titik henti terletak setelah Console.ReadLine panggilan metode. Konsol Debug tidak menerima input terminal untuk program yang sedang berjalan. Untuk menangani input terminal saat penelusuran kesalahan, Anda dapat menggunakan terminal terintegrasi (salah satu jendela Visual Studio Code) atau terminal eksternal. Untuk tutorial ini, Anda menggunakan terminal terintegrasi.

  1. Buka .vscode/launch.json.

  2. console Ubah pengaturan dari internalConsole ke integratedTerminal:

    "console": "integratedTerminal",
    
  3. Simpan perubahan Anda.

Mulai penelusuran kesalahan

  1. Buka tampilan Debug dengan memilih ikon Debugging di menu sisi kiri.

    Open the Debug tab in Visual Studio Code

  2. Pilih panah hijau di bagian atas panel, di samping .NET Core Launch (konsol). Cara lain untuk memulai program dalam mode penelusuran kesalahan adalah dengan menekan F5 atau memilih Jalankan>Mulai Debugging dari menu.

    Start debugging

  3. Pilih tab Terminal untuk melihat perintah "Apa nama Anda?" yang ditampilkan program sebelum menunggu respons.

    Select the Terminal tab

  4. Masukkan string di jendela Terminal sebagai respons terhadap perintah untuk nama, lalu tekan Enter.

    Eksekusi program berhenti ketika mencapai titik henti dan sebelum Console.WriteLine metode berjalan. Bagian Lokal dari jendela Variabel menampilkan nilai variabel yang ditentukan dalam metode yang sedang berjalan.

    Breakpoint hit, showing Locals

Menggunakan Konsol Debug

Jendela Konsol Debug memungkinkan Anda berinteraksi dengan aplikasi yang Sedang Anda debug. Anda dapat mengubah nilai variabel untuk melihat pengaruhnya terhadap program Anda.

  1. Pilih tab Konsol Debug.

  2. Masukkan name = "Gracie" pada perintah di bagian bawah jendela Konsol Debug dan tekan tombol Enter .

    Change variable values

  3. Masukkan currentDate = DateTime.Parse("2019-11-16T17:25:00Z").ToUniversalTime() di bagian bawah jendela Konsol Debug dan tekan tombol Enter .

    Jendela Variabel menampilkan nilai baru variabel name dan currentDate .

  4. Lanjutkan eksekusi program dengan memilih tombol Lanjutkan di bilah alat. Cara lain untuk melanjutkan adalah dengan menekan F5.

    Continue debugging

  5. Pilih tab Terminal lagi.

    Nilai yang ditampilkan di jendela konsol sesuai dengan perubahan yang Anda buat di Konsol Debug.

    Terminal showing the entered values

  6. Tekan tombol apa pun untuk keluar dari aplikasi dan hentikan penelusuran kesalahan.

Mengatur titik henti bersyarah

Program menampilkan untai (karakter) yang dimasukkan pengguna. Apa yang terjadi jika pengguna tidak memasukkan apa pun? Anda dapat menguji ini dengan fitur penelusuran kesalahan yang berguna yang disebut titik henti kondisional.

  1. Klik kanan (Ctrl-klik pada macOS) pada titik merah yang mewakili titik henti. Di menu konteks, pilih Edit Titik Henti untuk membuka dialog yang memungkinkan Anda memasukkan ekspresi bersyarah.

    Breakpoint context menu

  2. Pilih Expression di menu drop-down, masukkan ekspresi bersyarah berikut, dan tekan Enter.

    String.IsNullOrEmpty(name)
    

    Enter a conditional expression

    Setiap kali titik henti tertembak, debugger memanggil String.IsNullOrEmpty(name) metode , dan berhenti pada baris ini hanya jika panggilan metode mengembalikan true.

    Alih-alih ekspresi kondisional, Anda dapat menentukan hit count, yang mengganggu eksekusi program sebelum pernyataan dijalankan beberapa kali. Opsi lain adalah menentukan kondisi filter, yang mengganggu eksekusi program berdasarkan atribut seperti pengidentifikasi utas, nama proses, atau nama utas.

  3. Mulai program dengan penelusuran kesalahan dengan menekan F5.

  4. Di tab Terminal , tekan tombol Enter saat diminta untuk memasukkan nama Anda.

    Karena kondisi yang Anda tentukan (name adalah null atau String.Empty) telah terpenuhi, eksekusi program berhenti ketika mencapai titik henti dan sebelum Console.WriteLine metode berjalan.

    Jendela Variabel menunjukkan bahwa nilai name variabel adalah "", atau String.Empty.

  5. Konfirmasikan nilainya adalah string kosong dengan memasukkan pernyataan berikut di prompt Konsol Debug dan menekan Enter. Hasilnya adalah true.

    name == String.Empty
    
  6. Pilih tombol Lanjutkan pada toolbar untuk melanjutkan eksekusi program.

  7. Pilih tab Terminal , dan tekan tombol apa pun untuk keluar dari program dan hentikan penelusuran kesalahan.

  8. Kosongkan titik henti dengan mengklik titik di margin kiri jendela kode. Cara lain untuk menghapus titik henti adalah dengan menekan F9 atau memilih Jalankan > Ganti Titik Henti dari menu saat baris kode dipilih.

  9. Jika Anda mendapatkan peringatan bahwa kondisi titik henti akan hilang, pilih Hapus Titik Henti.

Menelusuri program

Visual Studio Code juga memungkinkan Anda untuk melangkah baris demi baris melalui program dan memantau eksekusinya. Biasanya, Anda akan mengatur titik henti dan mengikuti alur program melalui sebagian kecil kode program Anda. Karena program ini kecil, Anda dapat menelusuri seluruh program.

  1. Atur titik henti pada kurung Main kurawal pembuka metode.

  2. Tekan F5 untuk mulai penelusuran kesalahan.

    Visual Studio Code menyoroti garis titik henti.

    Pada titik ini, jendela Variabel menunjukkan bahwa args array kosong, dan name currentDate memiliki nilai default.

  3. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Step-Into button

    Visual Studio Code menyoroti baris berikutnya.

  4. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Visual Studio Code menjalankan Console.WriteLine untuk perintah nama dan menyoroti baris eksekusi berikutnya. Baris berikutnya adalah Console.ReadLine untuk name. Jendela Variabel tidak berubah, dan tab Terminal menunjukkan perintah "Apa nama Anda?".

  5. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Visual Studio menyoroti penetapan name variabel. Jendela Variabel dibersihkan .

  6. Tanggapi perintah dengan memasukkan string di tab Terminal dan menekan Enter.

    Tab Terminal mungkin tidak menampilkan string yang Anda masukkan saat Anda memasukkannya, tetapi Console.ReadLine metode akan mengambil input Anda.

    Jendela Variabel menunjukkan nilai yang dikembalikan oleh panggilan ke Console.ReadLine metode .

  7. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Visual Studio Code menyoroti penetapan currentDate variabel. Tab Terminal menampilkan string yang Anda masukkan saat diminta.

  8. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Jendela Variabel menunjukkan nilai currentDate variabel setelah penugasan dari DateTime.Now properti .

  9. Pilih Jalankan>Langkah ke Dalam atau tekan F11.

    Visual Studio Code memanggil Console.WriteLine(String, Object, Object) metode . Jendela konsol menampilkan string yang diformat.

  10. Pilih Jalankan>Langkah Keluar atau tekan Shift+F11.

    Step-Out button

  11. Pilih tab Terminal .

    Terminal menampilkan "Tekan tombol apa pun untuk keluar..."

  12. Tekan tombol apa pun untuk keluar dari program.

Menggunakan konfigurasi build Rilis

Setelah menguji versi Debug aplikasi, Anda juga harus mengkompilasi dan menguji versi Rilis. Versi Rilis menggabungkan pengoptimalan pengkompilasi yang dapat memengaruhi perilaku aplikasi. Misalnya, pengoptimalan kompilator yang dirancang untuk meningkatkan performa dapat menciptakan kondisi balapan di aplikasi multithread.

Untuk membangun dan menguji versi Rilis aplikasi konsol Anda, buka Terminal dan jalankan perintah berikut:

dotnet run --configuration Release

Sumber Daya Tambahan:

Langkah berikutnya

Dalam tutorial ini, Anda menggunakan alat penelusuran kesalahan Visual Studio Code. Dalam tutorial berikutnya, Anda menerbitkan versi aplikasi yang dapat disebarkan.