Menjalankan pengujian unit dengan Test Explorer
Gunakan Test Explorer untuk menjalankan pengujian unit dari Visual Studio atau proyek pengujian unit pihak ketiga. Anda juga dapat menggunakan Test Explorer untuk mengelompokkan pengujian ke dalam kategori, memfilter daftar pengujian, dan membuat, menyimpan, dan menjalankan daftar putar pengujian. Anda juga dapat menggunakan Test Explorer untuk men- debug pengujian unit dan, di Visual Studio Enterprise, untuk menganalisis cakupan kode.
Test Explorer dapat menjalankan pengujian dari beberapa proyek pengujian dalam suatu solusi dan dari kelas pengujian yang merupakan bagian dari proyek kode produksi. Proyek pengujian dapat menggunakan kerangka kerja pengujian unit yang berbeda. Saat kode yang diuji ditulis untuk .NET, proyek pengujian dapat ditulis dalam bahasa apa pun yang juga menargetkan .NET, terlepas dari bahasa kode target. Proyek kode C/C++ asli harus diuji dengan menggunakan kerangka pengujian unit C++.
Membangun proyek pengujian Anda
Jika Anda belum memiliki proyek pengujian yang disiapkan dalam solusi Visual Studio, Anda harus terlebih dahulu membuat dan membangun proyek pengujian.
Visual Studio menyertakan kerangka kerja pengujian unit Microsoft untuk kode terkelola dan asli. Namun, Test Explorer juga dapat menjalankan kerangka uji unit apa pun yang telah menerapkan adaptor Test Explorer. Untuk informasi selengkapnya tentang menginstal kerangka kerja pengujian unit pihak ketiga, lihat Menginstal kerangka kerja pengujian unit pihak ketiga
Menjalankan pengujian di Test Explorer
Saat Anda membangun proyek pengujian, pengujian akan muncul di Test Explorer. Jika Test Explorer tidak terlihat, pilih Uji pada menu Visual Studio, lalu pilih Test Explorer (atau tekan Ctrl + E, T).
Saat Anda menjalankan, menulis, dan menjalankan kembali pengujian, Test Explorer menampilkan hasil dalam pengelompokan default Proyek, Namespace, dan Kelas. Anda dapat mengubah cara Test Explorer mengelompokkan pengujian Anda.
Anda dapat melakukan banyak pekerjaan untuk menemukan, mengatur, dan menjalankan pengujian dari toolbar Test Explorer.
Jalankan pengujian
Anda dapat menjalankan semua pengujian dalam solusi, semua pengujian dalam grup, atau serangkaian pengujian yang Anda pilih. Lakukan salah satu langkah berikut:
Untuk menjalankan semua pengujian dalam sebuah solusi, pilih ikon Jalankan Semua (atau tekan Ctrl + R, V).
Untuk menjalankan semua pengujian dalam grup default, pilih ikon Jalankan lalu pilih grup pada menu.
Pilih pengujian individual yang ingin Anda jalankan, buka menu klik kanan untuk pengujian yang dipilih, lalu pilih Jalankan Pengujian yang Dipilih (atau tekan Ctrl + R, T).
Jika pengujian individual tidak memiliki dependensi yang mencegahnya dijalankan dalam urutan apa pun, aktifkan eksekusi pengujian paralel di menu pengaturan toolbar. Ini secara nyata dapat mengurangi waktu yang dibutuhkan untuk menjalankan semua pengujian.
Menjalankan pengujian setelah setiap build
Untuk menjalankan pengujian unit Anda setelah setiap build lokal, buka ikon pengaturan di toolbar Test Explorer dan pilih Jalankan Pengujian Setelah Build.
Lihat hasil pengujian
Saat Anda menjalankan, menulis, dan menjalankan ulang pengujian, Test Explorer menampilkan hasil dalam grup Pengujian yang Gagal, Pengujian yang Lulus, Pengujian yang Dilewati dan Tidak Menjalankan Pengujian. Panel detail di bagian bawah atau samping Test Explorer menampilkan ringkasan uji coba.
Melihat detail pengujian
Untuk melihat detail pengujian individual, pilih pengujian.
Panel detail pengujian menampilkan informasi berikut:
Nama file sumber dan nomor baris metode pengujian.
Status pengujian.
Waktu yang diperlukan untuk menjalankan metode pengujian.
Jika pengujian gagal, panel detail juga menampilkan:
Pesan yang dikembalikan oleh kerangka pengujian unit untuk pengujian.
Jejak tumpukan pada saat pengujian gagal.
Melihat kode sumber metode pengujian
Untuk menampilkan kode sumber metode pengujian di editor Visual Studio, pilih pengujian lalu pilih Buka Pengujian pada menu klik kanan (atau tekan F12).
Mengelompokkan dan memfilter daftar pengujian
Test Explorer memungkinkan Anda mengelompokkan pengujian ke dalam kategori yang telah ditentukan sebelumnya. Sebagian besar kerangka kerja pengujian unit yang berjalan di Test Explorer memungkinkan Anda menentukan kategori dan pasangan kategori/nilai Anda sendiri untuk mengelompokkan pengujian Anda. Anda juga dapat memfilter daftar pengujian dengan mencocokkan string dengan properti pengujian.
Pengujian grup dalam daftar pengujian
Test Explorer memungkinkan Anda mengelompokkan pengujian ke dalam hierarki. Pengelompokan hierarki default adalah Proyek, Namespace, lalu Kelas. Untuk mengubah cara pengujian diatur, pilih tombol Kelompokkan Menurut dan pilih kriteria pengelompokan baru.
Anda dapat menentukan tingkat hierarki dan grup Anda sendiri menurut Negara Bagian lalu Kelas misalnya dengan memilih opsi Kelompokkan Menurut dalam urutan pilihan Anda.
Test Explorer memungkinkan Anda mengelompokkan pengujian ke dalam hierarki. Pengelompokan hierarki default adalah Proyek, Namespace, lalu Kelas. Untuk mengubah cara pengujian diatur, pilih tombol Kelompokkan Menurut dan pilih kriteria pengelompokan baru.
Anda dapat menentukan tingkat hierarki dan grup Anda sendiri menurut Negara Bagian lalu Kelas misalnya dengan memilih opsi Kelompokkan Menurut dalam urutan pilihan Anda.
Grup Test Explorer
Grupkan | Deskripsi |
---|---|
Durasi | Mengelompokkan pengujian menurut waktu eksekusi: Cepat, Sedang, dan Lambat. |
Solid | Mengelompokkan pengujian berdasarkan hasil eksekusi: Tes yang Gagal, Tes yang Dilewati, Tes yang Lulus, Tidak Dijalankan |
Kerangka Target | Mengelompokkan pengujian berdasarkan kerangka kerja target proyek mereka |
Namespace Layanan | Mengelompokkan pengujian berdasarkan namespace yang memuatnya. |
Proyek | Mengelompokkan pengujian berdasarkan proyek yang memuatnya. |
Kelas | Mengelompokkan pengujian berdasarkan kelas yang memuatnya. |
Sifat
Sifat biasanya merupakan pasangan nama/nilai kategori, tetapi bisa juga satu kategori. Sifat dapat diberikan ke metode yang diidentifikasi sebagai metode pengujian oleh kerangka pengujian unit. Kerangka pengujian unit dapat menentukan kategori sifat. Anda dapat menambahkan nilai ke kategori sifat untuk menentukan pasangan nama/nilai kategori Anda sendiri. Sintaks untuk menentukan kategori dan nilai sifat ditentukan oleh kerangka pengujian unit.
Sifat dalam Kerangka Pengujian Unit Microsoft untuk Kode Terkelola
Dalam kerangka kerja pengujian unit Microsoft untuk aplikasi terkelola, Anda menentukan pasangan nama sifat/nilai dalam atribut TestPropertyAttribute. Kerangka pengujian juga berisi sifat yang telah ditentukan ini:
Sifat | Deskripsi |
---|---|
OwnerAttribute | Kategori Pemilik ditentukan oleh kerangka pengujian unit dan mengharuskan Anda memberikan nilai string pemilik. |
PriorityAttribute | Kategori Prioritas ditentukan oleh kerangka pengujian unit dan mengharuskan Anda memberikan nilai bilangan bulat dari prioritas. |
TestCategoryAttribute | Atribut TestCategory memungkinkan Anda menentukan kategori pengujian unit. |
TestPropertyAttribute | Atribut TestProperty memungkinkan Anda untuk menentukan kategori sifat/pasangan nilai. |
Sifat dalam Kerangka Pengujian Unit Microsoft untuk C++
Lihat Cara menggunakan Kerangka Kerja Pengujian Unit Microsoft untuk C++.
Membuat daftar putar kustom
Anda dapat membuat dan menyimpan daftar pengujian yang ingin dijalankan atau dilihat sebagai grup. Saat Anda memilih daftar putar, pengujian dalam daftar ditampilkan di tab Test Explorer baru. Anda dapat menambahkan pengujian ke lebih dari satu daftar putar.
Untuk membuat daftar putar, pilih satu atau beberapa pengujian di Test Explorer. Pada menu klik kanan, pilih Tambahkan ke Daftar Putar>Daftar Putar Baru.
Daftar putar terbuka di tab Test Explorer baru. Anda dapat menggunakan daftar putar ini sekali lalu membuangnya, atau Anda dapat mengeklik tombol Simpan di toolbar jendela daftar putar, lalu pilih nama dan lokasi untuk menyimpan daftar putar.
Untuk membuat daftar putar, pilih satu atau beberapa pengujian di Test Explorer. Klik kanan dan pilih Tambahkan ke Daftar Putar>Daftar putar baru.
Untuk membuka daftar putar, pilih ikon daftar putar di toolbar Visual Studio dan pilih file daftar putar yang disimpan sebelumnya dari menu.
Untuk mengedit daftar putar, Anda dapat mengeklik kanan pengujian apa pun dan menggunakan opsi menu untuk menambah atau menghapusnya dari daftar putar.
Mulai di Visual Studio 2019 versi 16.7, Anda dapat memilih tombol Edit di toolbar. Kotak centang akan muncul di sebelah pengujian Anda yang menunjukkan pengujian apa yang disertakan dan dikecualikan dalam daftar putar. Edit grup sesuai keinginan.
Anda juga dapat mencentang atau menghapus centang pada kotak grup induk dalam hierarki. Tindakan ini membuat daftar putar dinamis yang selalu memperbarui daftar putar berdasarkan pengujian yang ada di grup tersebut. Misalnya, jika Anda memberi tanda centang di sebelah kelas, pengujian apa pun yang ditambahkan dari kelas tersebut menjadi bagian dari daftar putar ini. Jika Anda menghapus pengujian dari kelas itu, pengujian tersebut akan dihapus dari daftar putar. Anda dapat mempelajari lebih lanjut tentang aturan dengan menyimpan daftar putar dengan tombol Simpan di toolbar dan membuka file .playlist yang dibuat di disk Anda. File ini mencantumkan semua aturan dan pengujian individual yang membentuk daftar putar.
Jika Anda ingin membuat daftar putar untuk sifat, gunakan format berikut untuk MSTest.
<Playlist Version="2.0">
<Rule Name="Includes" Match="Any">
<Property Name="Trait" Value="SchemaUpdateBasic" />
</Rule>
</Playlist>
Gunakan format berikut untuk xUnit. Pastikan terdapat spasi antara nama TestCategory
dan [Value]
Anda.
<Playlist Version="2.0">
<Rule Name="Includes" Match="Any">
<Rule Match="All">
<Property Name="Solution" />
<Rule Match="Any">
<Property Name="Trait" Value="TestCategory [Value]" />
</Rule>
</Rule>
</Rule>
</Playlist>
Anda dapat membuat dan menyimpan daftar pengujian yang ingin dijalankan atau dilihat sebagai grup. Saat Anda memilih daftar putar, pengujian dalam daftar ditampilkan di tab Test Explorer baru. Anda dapat menambahkan pengujian ke lebih dari satu daftar putar.
Untuk membuat daftar putar, pilih satu atau beberapa pengujian di Test Explorer. Pada menu klik kanan, pilih Tambahkan ke Daftar Putar>Daftar Putar Baru.
Daftar putar terbuka di tab Test Explorer baru. Anda dapat menggunakan daftar putar ini sekali lalu membuangnya, atau Anda dapat mengeklik tombol Simpan di toolbar jendela daftar putar, lalu pilih nama dan lokasi untuk menyimpan daftar putar.
Untuk membuat daftar putar, pilih satu atau beberapa pengujian di Test Explorer. Klik kanan dan pilih Tambahkan ke Daftar Putar>Daftar putar baru.
Untuk membuka daftar putar, pilih ikon daftar putar di toolbar Visual Studio dan pilih file daftar putar yang disimpan sebelumnya dari menu.
Untuk mengedit daftar putar, Anda dapat mengeklik kanan pengujian apa pun dan menggunakan opsi menu untuk menambah atau menghapusnya dari daftar putar.
Mulai di Visual Studio 2019 versi 16.7, Anda dapat memilih tombol Edit di toolbar. Kotak centang akan muncul di sebelah pengujian Anda yang menunjukkan pengujian apa yang disertakan dan dikecualikan dalam daftar putar. Edit grup sesuai keinginan.
Anda juga dapat mencentang atau menghapus centang pada kotak grup induk dalam hierarki. Tindakan ini membuat daftar putar dinamis yang selalu memperbarui daftar putar berdasarkan pengujian yang ada di grup tersebut. Misalnya, jika Anda memberi tanda centang di sebelah kelas, pengujian apa pun yang ditambahkan dari kelas tersebut menjadi bagian dari daftar putar ini. Jika Anda menghapus pengujian dari kelas itu, pengujian tersebut akan dihapus dari daftar putar. Anda dapat mempelajari lebih lanjut tentang aturan dengan menyimpan daftar putar dengan tombol Simpan di toolbar dan membuka file .playlist yang dibuat di disk Anda. File ini mencantumkan semua aturan dan pengujian individual yang membentuk daftar putar.
Jika Anda ingin membuat daftar putar untuk sifat, gunakan format berikut untuk MSTest.
<Playlist Version="2.0">
<Rule Name="Includes" Match="Any">
<Property Name="Trait" Value="SchemaUpdateBasic" />
</Rule>
</Playlist>
Gunakan format berikut untuk xUnit. Pastikan terdapat spasi antara nama TestCategory
dan [Value]
Anda.
<Playlist Version="2.0">
<Rule Name="Includes" Match="Any">
<Rule Match="All">
<Property Name="Solution" />
<Rule Match="Any">
<Property Name="Trait" Value="TestCategory [Value]" />
</Rule>
</Rule>
</Rule>
</Playlist>
Kolom Test Explorer
Grup juga tersedia sebagai kolom di Test Explorer, bersama dengan Sifat, Jejak Tumpukan, Pesan Kesalahan, dan Nama yang Sepenuhnya Memenuhi Syarat. Sebagian besar kolom tidak terlihat secara default, dan Anda dapat menyesuaikan kolom mana yang Anda lihat dan urutan kemunculannya.
Memfilter, mengurutkan, dan menyusun ulang kolom pengujian
Kolom dapat disaring, diurutkan, dan disusun ulang.
Untuk memfilter ke sifat tertentu, klik ikon filter di bagian atas kolom Sifat.
Untuk mengubah urutan kolom, klik header kolom dan seret ke kiri atau kanan.
Untuk mengurutkan kolom, klik pada header kolom. Tidak semua kolom dapat diurutkan. Anda juga dapat mengurutkan menurut kolom sekunder dengan menahan tombol Shift dan mengeklik header kolom tambahan.
Kolom Test Explorer
Grup juga tersedia sebagai kolom di Test Explorer, bersama dengan Sifat, Jejak Tumpukan, Pesan Kesalahan, dan Nama yang Sepenuhnya Memenuhi Syarat. Sebagian besar kolom tidak terlihat secara default, dan Anda dapat menyesuaikan kolom mana yang Anda lihat dan urutan kemunculannya.
Memfilter, mengurutkan, dan menyusun ulang kolom pengujian
Kolom dapat disaring, diurutkan, dan disusun ulang.
Untuk memfilter ke sifat tertentu, klik ikon filter di bagian atas kolom Sifat.
Untuk mengubah urutan kolom, klik header kolom dan seret ke kiri atau kanan.
Untuk mengurutkan kolom, klik pada header kolom. Tidak semua kolom dapat diurutkan. Anda juga dapat mengurutkan menurut kolom sekunder dengan menahan tombol Shift dan mengeklik header kolom tambahan.
Mencari dan memfilter daftar pengujian
Anda juga dapat menggunakan filter pencarian Test Explorer untuk membatasi metode pengujian dalam proyek yang Anda lihat dan jalankan.
Saat Anda mengetikkan string di kotak pencarian Test Explorer dan memilih Enter, daftar pengujian difilter untuk menampilkan hanya pengujian yang namanya sepenuhnya memenuhi syarat berisi string.
Untuk memfilter menurut kriteria yang berbeda:
Buka daftar drop-down di sebelah kanan kotak pencarian.
Pilih kriteria baru.
Masukkan nilai filter di antara tanda kutip. Jika Anda ingin mencari kecocokan persis pada string alih-alih kecocokan yang berisi, gunakan tanda sama dengan (=) alih-alih titik dua (:).
Catatan
Penelusuran tidak peka huruf besar/kecil dan mencocokkan string yang ditentukan dengan bagian mana pun dari nilai kriteria.
Pengualifikasi | Deskripsi |
---|---|
Solid | Menelusuri nama kategori Test Explorer untuk kecocokan: Pengujian yang Gagal, Pengujian yang Dilewati, Pengujian yang Lulus. |
Sifat | Mencari kategori sifat dan nilai untuk kecocokan. Sintaks untuk menentukan kategori dan nilai sifat ditentukan oleh kerangka pengujian unit. |
Nama yang Sepenuhnya Memenuhi Syarat | Mencari nama yang sepenuhnya memenuhi syarat dari namespace pengujian, kelas, dan metode untuk kecocokan. |
Proyek | Mencari nama proyek pengujian untuk kecocokan. |
Kerangka Target | Mencari kerangka kerja pengujian untuk kecocokan. |
Namespace Layanan | Menelusuri namespace pengujian untuk menemukan kecocokan. |
Kelas | Mencari nama kelas pengujian untuk kecocokan. |
Untuk mengecualikan subset hasil filter, gunakan sintaks berikut:
FilterName:"Criteria" -FilterName:"SubsetCriteria"
Misalnya, FullName:"MyClass" - FullName:"PerfTest"
mengembalikan semua pengujian yang menyertakan "MyClass" dalam namanya, kecuali pengujian yang juga menyertakan "PerfTest" dalam namanya.
Menganalisis cakupan kode pengujian unit
Anda dapat menentukan jumlah kode produk yang sebenarnya sedang diuji oleh pengujian unit Anda dengan menggunakan alat cakupan kode Visual Studio yang tersedia dalam edisi Visual Studio Enterprise. Anda dapat menjalankan cakupan kode pada pengujian terpilih atau pada semua pengujian dalam solusi.
Untuk menjalankan cakupan kode untuk metode pengujian dalam solusi:
- Klik kanan di Test Explorer dan pilih Analisis Cakupan Kode untuk Pengujian yang Dipilih
Jendela Hasil Cakupan Kode menampilkan persentase blok kode produk yang dijalankan oleh baris, fungsi, kelas, namespace layanan, dan modul.
Untuk informasi selengkapnya, lihat Menggunakan cakupan kode untuk menentukan berapa banyak kode yang sedang diuji.
Pintasan pengujian
Pengujian dapat dijalankan dari Test Explorer dengan mengeklik kanan di editor kode pada pengujian dan memilih Jalankan pengujian atau dengan menggunakan Pintasan Test Explorer default di Visual Studio. Beberapa pintasan berbasis konteks. Ini berarti bahwa mereka menjalankan, men-debug, atau menguji profil berdasarkan di mana kursor Anda berada di editor kode. Jika kursor Anda berada di dalam metode pengujian, metode pengujian tersebut akan berjalan. Jika kursor Anda berada di tingkat kelas, semua pengujian di kelas itu akan berjalan. Proses ini juga sama untuk level namespace.
Perintah yang Sering | Pintasan Papan Ketik |
---|---|
TestExplorer.DebugAllTestsInContext | Ctrl+R, Ctrl+T |
TestExplorer.RunAllTestsInContext | Ctrl+R, T |
TestExplorer.RunAllTests | Ctrl+R, A |
TestExplorer.RepeatLastRun | Ctrl+R, L |
Catatan
Anda tidak dapat menjalankan pengujian di kelas abstrak, karena pengujian hanya ditentukan di kelas abstrak dan tidak dipakai. Untuk menjalankan pengujian di kelas abstrak, buat kelas yang diturunkan dari kelas abstrak.
Menguji isyarat audio
Test Explorer dapat memutar suara saat uji coba selesai. Terdapat dua suara: satu suara untuk menunjukkan uji coba berhasil dengan semua pengujian yang lulus, dan suara kedua untuk menunjukkan uji coba selesai dengan setidaknya satu pengujian gagal. Anda dapat mengatur suara ini di dialog suara Windows 11 default. Fitur ini tersedia mulai dari Visual Studio 2019 Update 16.9 Pratinjau 3.
- Buka dialog suara Windows 11 default.
- Arahkan ke tab Suara.
- Temukan kategori Microsoft Visual Studio. Pilih suara Uji Coba Berhasil atau Uji Coba Gagal untuk memilih suara yang telah ditetapkan atau telusuri file audio Anda sendiri.