Bagikan melalui


Membuat kode berfungsi di Visual Studio

Visual Studio menyertakan sekumpulan alat build dan debugging proyek terintegrasi yang kuat. Artikel ini menjelaskan bagaimana Visual Studio dapat membantu Anda menemukan masalah dalam kode Anda dengan menggunakan output build, analisis kode, alat penelusuran kesalahan, dan pengujian unit.

Anda telah memahami editor dan mulai membuat beberapa kode. Sekarang, Anda ingin memastikan kode berfungsi dengan baik. Di Visual Studio, seperti kebanyakan IDEs, ada dua fase untuk membuat kode berfungsi: membangun kode untuk menangkap dan mengatasi kesalahan proyek dan pengkompilasi, dan menjalankan kode untuk menemukan kesalahan run-time dan dinamis.

Membangun kode Anda

Ada dua jenis dasar konfigurasi build: Debug dan Rilis. Konfigurasi Debug menghasilkan executable yang lebih lambat dan lebih besar yang memungkinkan pengalaman debugging run-time interaktif yang lebih kaya. Debug yang dapat dieksekusi tidak boleh dikirim. Konfigurasi Rilis membangun executable yang lebih cepat dan dioptimalkan yang sesuai untuk dikirim (setidaknya dari perspektif pengkompilasi). Konfigurasi build default adalah Debug.

Cara term mudah untuk membangun proyek Anda adalah dengan menekan F7, tetapi Anda juga dapat memulai build dengan memilih Build>Build Solution dari menu utama.

Cuplikan layar menu Build di Visual Studio IDE.

Anda dapat mengamati proses build di jendela Output di bagian bawah UI Visual Studio (antarmuka pengguna). Kesalahan, peringatan, dan operasi build ditampilkan di sini. Jika Anda memiliki kesalahan (atau jika Anda memiliki peringatan di atas tingkat yang dikonfigurasi), build Anda gagal. Anda dapat memilih kesalahan dan peringatan untuk menuju ke baris tempat terjadinya. Bangun kembali proyek Anda dengan menekan F7 lagi (untuk mengkompilasi ulang hanya file dengan kesalahan) atau Ctrl+Alt+F7 (untuk pembangunan ulang yang bersih dan lengkap).

Ada dua jendela bertab di jendela hasil di bawah editor: jendela Output , yang berisi output kompilator mentah (termasuk pesan kesalahan); dan jendela Daftar Kesalahan , yang menyediakan daftar semua kesalahan dan peringatan yang dapat diurutkan dan dapat difilter.

Saat build berhasil, Anda akan melihat hasil seperti ini di jendela Output :

Cuplikan layar output build Visual Studio yang berhasil.

Tinjau Daftar Kesalahan

Kecuali Anda tidak membuat modifikasi pada kode yang telah Anda buat sebelumnya dan berhasil dikompilasi, Anda mungkin mengalami kesalahan. Jika Anda baru dalam pengkodean, Anda mungkin memiliki banyak pertanyaan. Kesalahan terkadang jelas, seperti kesalahan sintaks sederhana atau nama variabel yang salah, dan terkadang sulit dipahami, hanya dengan kode kriptik untuk memandu Anda. Untuk tampilan masalah yang lebih bersih, navigasikan ke bagian bawah jendela build Output dan pilih tab Daftar Kesalahan . Tindakan ini membawa Anda ke tampilan kesalahan dan peringatan yang lebih terorganisir untuk proyek Anda, dan memberi Anda beberapa opsi tambahan juga.

Cuplikan layar Output Visual Studio dan Daftar Kesalahan.

Pilih pada baris kesalahan di jendela Daftar Kesalahan untuk melompat ke baris tempat kesalahan terjadi. (Atau nyalakan nomor garis dengan menekan Ctrl+T, mengetik nomor baris, lalu memilih Aktifkan atau nonaktifkan nomor baris dari hasil. Tindakan ini adalah cara tercepat untuk masuk ke dialog Opsi tempat Anda dapat mengaktifkan nomor baris.)

Cuplikan layar editor Visual Studio dengan nomor baris.

Cuplikan layar opsi nomor baris Visual Studio.

Tekan Ctrl+G untuk melompat dengan cepat ke nomor baris tempat kesalahan terjadi.

Visual Studio mengidentifikasi kesalahan ini dengan garis bawah "berlekuk" merah. Arahkan mouse ke atasnya untuk detail selengkapnya. Lakukan perbaikan dan masalahnya akan hilang, meskipun Anda mungkin memperkenalkan kesalahan baru saat melakukan koreksi. (Tindakan ini disebut "regresi".)

Tangkapan layar dari tindakan hover kesalahan di Visual Studio.

Telusuri daftar kesalahan dan atasi semua kesalahan dalam kode Anda.

Cuplikan layar jendela kesalahan Visual Studio Debug.

Meninjau kesalahan secara rinci

Banyak kesalahan mungkin tidak masuk akal bagi Anda, karena diungkapkan dalam istilah khusus pengkompilasi. Dalam kasus tersebut, Anda mungkin memerlukan informasi tambahan. Dari jendela Daftar Kesalahan , Anda dapat melakukan pencarian Bing otomatis untuk informasi selengkapnya tentang kesalahan atau peringatan. Klik kanan pada baris entri yang sesuai dan pilih Perlihatkan Bantuan Kesalahan dari menu konteks, atau pilih nilai kode kesalahan hyperlink di kolom Kodedaftar Kesalahan.

Cuplikan layar hasil pencarian Bing untuk daftar kesalahan Visual Studio.

Bergantung pada pengaturan Anda, browser web Anda menampilkan hasil pencarian untuk kode kesalahan dan teks, atau tab terbuka di dalam Visual Studio dan menampilkan hasil pencarian Bing. Hasilnya berasal dari berbagai sumber di Internet, dan Anda mungkin tidak merasa semuanya berguna.

Menggunakan analisis kode

Penganalisis kode mencari masalah kode umum yang dapat menyebabkan kesalahan run-time atau masalah dalam manajemen kode.

Analisis kode C# dan Visual Basic

Visual Studio menyertakan sekumpulan penganalisis .NET Compiler Platform bawaan yang memeriksa kode C# dan Visual Basic saat Anda mengetik. Anda dapat menginstal lebih banyak penganalisis sebagai ekstensi Visual Studio, atau sebagai paket NuGet. Jika pelanggaran aturan ditemukan, pelanggaran tersebut dilaporkan baik di Daftar Kesalahan maupun di editor kode sebagai garis bergelombang di bawah kode yang melanggar.

Analisis kode C++

Untuk menganalisis kode C++, jalankan analisis kode statis. Biasakan untuk menjalankannya setelah Anda menyelesaikan kesalahan-kesalahan yang jelas yang mencegah build berhasil, dan luangkan waktu untuk mengatasi peringatan yang mungkin dihasilkannya. Anda dapat menghindari beberapa masalah di masa depan, dan Anda mungkin mempelajari beberapa teknik penulisan kode.

Tekan Alt+F11 (atau pilih Analisis>Analisis Kode Eksekusi pada Solusi dari menu atas) untuk memulai analisis kode statis.

Cuplikan layar menu item Analisis Kode Visual Studio.

Peringatan baru atau yang diperbarui muncul di tab Daftar Kesalahan di bagian bawah IDE. Pilih peringatan untuk melompat ke bagian kode tersebut.

Cuplikan layar Daftar Kesalahan Visual Studio dengan Peringatan.

Menggunakan Tindakan Cepat untuk memperbaiki atau merefaktor kode

Tindakan Cepat, tersedia dari ikon bola lampu atau obeng, memungkinkan Anda untuk merefaktor kode secara langsung. Ini adalah cara mudah untuk memperbaiki peringatan umum dengan cepat dan efektif dalam kode C#, C++, dan Visual Basic. Untuk mengaksesnya, klik kanan pada squiggle peringatan dan pilih Tindakan Cepat dan pemfaktoran ulang. Atau, saat kursor Anda berada pada garis yang memiliki lekuk berwarna, tekan Ctrl+. atau pilih ikon bola lampu, ikon kesalahan, atau ikon obeng di margin. Visual Studio kemudian menampilkan daftar kemungkinan perbaikan atau pemfaktoran ulang yang dapat Anda terapkan ke baris kode tersebut.

Cuplikan layar pratinjau bola lampu Visual Studio.

Tindakan Cepat dapat digunakan di mana pun penganalisis kode menentukan ada kesempatan untuk memperbaiki, merefaktor, atau meningkatkan kode Anda. Pilih pada baris kode apa pun, klik kanan untuk membuka menu konteks, dan pilih Tindakan Cepat dan pemfaktoran ulang. Jika tersedia opsi pemfaktoran ulang atau peningkatan, opsi tersebut akan ditampilkan. Jika tidak, pesan Tidak ada tindakan cepat yang tersedia di sini ditampilkan di sudut kiri bawah IDE.

Cuplikan layar teks 'Tidak ada tindakan cepat yang tersedia'.

Dengan pengalaman, Anda dapat dengan cepat menggunakan tombol panah dan Ctrl+. untuk memeriksa peluang refaktor yang mudah dan membersihkan kode Anda!

Jalankan Pembersihan Kode

Visual Studio menyediakan pemformatan sesuai permintaan file kode C#Anda, termasuk preferensi gaya kode, melalui tombol Pembersihan Kode di bagian bawah editor.

Cuplikan layar tombol Pembersihan Kode.

Selain memformat file Anda untuk spasi, inden, dan sebagainya, Pembersihan Kode juga menerapkan serangkaian konvensi gaya kode yang Anda tentukan. Preferensi Anda untuk setiap gaya kode dibaca dari file EditorConfig, jika Anda memilikinya untuk proyek, atau dari pengaturan gaya kode dalam kotak dialog opsi .

Men-debug kode anda yang sedang berjalan

Sekarang setelah Anda berhasil membangun kode dan melakukan sedikit pembersihan, jalankan dengan menekan F5 atau memilih Debug>Mulai Debugging. Tindakan ini memulai aplikasi Anda di lingkungan debug sehingga Anda dapat mengamati perilakunya secara rinci. IDE Visual Studio berubah saat aplikasi Anda berjalan: jendela Output digantikan oleh dua yang baru (dalam konfigurasi jendela default), jendela tab Autos/Locals/Watch dan jendela tab Call Stack/Breakpoints/Exception Settings/Output . Jendela ini memiliki beberapa tab yang memungkinkan Anda memeriksa dan mengevaluasi variabel aplikasi Anda, utas, tumpukan panggilan, dan perilaku lain selama aplikasi berjalan.

Cuplikan layar jendela Visual Studio Autos dan Call Stack.

Hentikan aplikasi Anda dengan menekan Shift+F5 atau dengan mengklik tombol Hentikan . Atau, Anda dapat menutup jendela utama aplikasi (atau dialog baris perintah).

Jika kode Anda berjalan sempurna dan persis seperti yang diharapkan, selamat! Namun, terkadang kode Anda mungkin berhenti merespons, atau mengalami crash, atau memberi Anda beberapa hasil yang aneh. Jika demikian, Anda harus mencoba menemukan sumber masalah tersebut dan memperbaiki bug.

Mengatur titik henti sederhana

Titik henti adalah fitur paling mendasar dan esensial dalam debug yang andal. Titik henti menunjukkan di mana Visual Studio harus menangguhkan kode yang sedang berjalan sehingga Anda dapat melihat nilai variabel, atau perilaku memori, atau apakah cabang kode sedang dijalankan. Anda tidak perlu membangun kembali proyek setelah mengatur dan menghapus titik henti.

Atur titik henti dengan mengklik di margin jauh garis tempat Anda ingin pemisah terjadi, atau tekan F9 untuk mengatur titik henti pada baris kode saat ini. Saat Anda menjalankan kode, kode akan dijeda (atau dihentikan) sebelum instruksi untuk baris kode ini dijalankan.

Cuplikan layar titik henti Visual Studio.

Penggunaan umum untuk titik henti meliputi:

  • Untuk mempersempit sumber crash atau program yang tidak responsif, sebarkan titik henti di dalam dan sekitar kode panggilan metode yang Anda kira menyebabkan kegagalan. Saat Anda menjalankan kode di debugger, hapus lalu atur ulang titik henti lebih berdekatan sampai Anda menemukan baris kode yang bermasalah. Lihat bagian berikutnya untuk mempelajari cara menjalankan kode di debugger.

  • Saat Anda memperkenalkan kode baru, atur titik henti di awalnya, dan jalankan kode untuk memastikan kode berperilaku seperti yang diharapkan.

  • Jika Anda telah menerapkan perilaku yang rumit, atur titik henti untuk kode algoritma sehingga Anda dapat memeriksa nilai variabel dan data saat program berhenti.

  • Jika Anda menulis kode C atau C++, gunakan titik henti untuk menghentikan kode sehingga Anda dapat memeriksa nilai alamat (mencari NULL) dan jumlah referensi saat men-debug kegagalan terkait memori.

Untuk informasi selengkapnya tentang menggunakan titik henti, lihat Menggunakan titik henti di debugger Visual Studio.

Memeriksa kode Anda saat run-time

Saat kode yang sedang berjalan mencapai titik henti dan jeda, baris kode yang ditandai dengan warna kuning (pernyataan saat ini) belum dijalankan. Pada titik ini, Anda mungkin ingin menjalankan pernyataan saat ini lalu memeriksa nilai yang diubah. Anda dapat menggunakan beberapa perintah langkah untuk menjalankan kode di debugger. Jika kode yang ditandai adalah panggilan metode, Anda dapat melangkah ke dalamnya dengan menekan F11. Anda juga dapat melewati baris kode dengan menekan F10. Untuk perintah dan detail selengkapnya tentang cara menelusuri kode, baca Menavigasi melalui kode dengan menggunakan debugger.

Cuplikan layar jendela kode Visual Studio. Titik merah di selokan kiri menunjukkan titik henti di baris kode yang ditandai dengan warna kuning.

Dalam ilustrasi sebelumnya, Anda dapat memajukan debugger satu pernyataan dengan menekan F10 atau F11 (karena tidak ada panggilan metode di sini, kedua perintah memiliki hasil yang sama).

Saat debugger dijeda, Anda dapat memeriksa variabel dan tumpukan panggilan untuk menentukan yang sedang terjadi. Apakah nilai dalam rentang yang anda harapkan untuk dilihat? Apakah panggilan dilakukan dalam urutan yang tepat?

Cuplikan layar jendela kode Visual Studio. Pada baris kode yang ditandai dengan warna kuning, variabel dipilih dan dropdown menunjukkan nilai dan referensinya saat ini.

Arahkan mouse ke atas variabel untuk melihat nilai dan referensinya saat ini. Jika Anda melihat nilai yang tidak Anda harapkan, Anda mungkin memiliki bug dalam kode sebelumnya atau panggilan. Untuk mempelajari selengkapnya, lihat Pertama-tama lihat Visual Studio Debugger.

Selain itu, Visual Studio menampilkan jendela Alat Diagnostik , tempat Anda dapat mengamati penggunaan CPU dan memori aplikasi dari waktu ke waktu. Nantinya dalam pengembangan aplikasi, Anda dapat menggunakan alat-alat ini untuk mencari penggunaan CPU berat atau alokasi memori yang tidak terduga. Gunakan dengan jendela Watch dan titik henti untuk menentukan apa yang menyebabkan penggunaan berlebihan yang tidak terduga atau sumber daya yang tidak dilepaskan. Untuk informasi selengkapnya, lihat Pertama-tama lihat alat pembuatan profil (C#, Visual Basic, C++, F#).

Menjalankan pengujian unit

Pengujian unit adalah garis pertahanan pertama Anda terhadap bug kode karena, ketika dilakukan dengan benar, mereka menguji satu "unit" kode, biasanya satu fungsi, dan lebih mudah di-debug daripada program lengkap Anda. Visual Studio menginstal kerangka kerja pengujian unit Microsoft untuk kode terkelola dan asli. Gunakan kerangka kerja pengujian unit untuk membuat pengujian unit, menjalankannya, dan melaporkan hasil pengujian ini. Jalankan ulang pengujian unit saat Anda membuat perubahan, untuk menguji bahwa kode Anda masih berfungsi dengan benar. Dengan edisi Visual Studio Enterprise, Anda dapat menjalankan pengujian secara otomatis setelah setiap build.

Untuk memulai, baca Membuat pengujian unit untuk pengujian fuzz dengan menggunakan IntelliTest.

Untuk mempelajari selengkapnya tentang pengujian unit di Visual Studio dan bagaimana pengujian tersebut dapat membantu Anda membuat kode kualitas yang lebih baik, baca Dasar-dasar pengujian Unit.