Bagikan melalui


VSTest.Console.exe opsi baris perintah

VSTest.Console.exe adalah alat baris perintah untuk menjalankan pengujian. Anda dapat menentukan beberapa opsi dalam urutan apa pun pada baris perintah. Opsi ini tercantum dalam opsi baris perintah Umum.

Nota

Adaptor MSTest di Visual Studio juga berfungsi dalam mode warisan (setara dengan menjalankan pengujian dengan mstest.exe) untuk kompatibilitas. Dalam mode warisan, ia tidak dapat memanfaatkan fitur TestCaseFilter. Adaptor dapat beralih ke mode warisan ketika testsettings file ditentukan, forcelegacymode diatur ke true dalam runsetting file, atau dengan menggunakan atribut seperti HostType.

Untuk menjalankan pengujian otomatis pada komputer berbasis arsitektur ARM, Anda harus menggunakan VSTest.Console.exe.

Buka Perintah Pengembang untuk menggunakan alat baris perintah, atau Anda dapat menemukan alat di %Program Files(x86)%\Microsoft Visual Studio\<versi>\<edisi>\common7\ide\CommonExtensions\<Platform | Microsoft>.

Opsi baris perintah umum

Tabel berikut mencantumkan semua opsi untuk VSTest.Console.exe dan deskripsi singkatnya. Anda dapat melihat ringkasan serupa dengan mengetik VSTest.Console/? pada baris perintah.

Pilihan Deskripsi
[nama file pengujian] Jalankan pengujian dari file yang ditentukan. Pisahkan beberapa nama file pengujian dengan spasi.
Contoh: mytestproject.dll, mytestproject.dll myothertestproject.exe
/Settings:[nama file] Jalankan pengujian dengan pengaturan tambahan seperti pengumpul data. Untuk informasi selengkapnya, lihat Mengonfigurasi pengujian unit menggunakan file .runsettings
Contoh: /Settings:local.runsettings
/Tests:[nama uji] Jalankan pengujian dengan nama yang berisi nilai yang disediakan. Perintah ini cocok dengan nama pengujian lengkap, termasuk namespace layanan. Untuk menyediakan beberapa nilai, pisahkan dengan koma.
Contoh: /Tests:TestMethod1,testMethod2
Opsi baris perintah /Tests tidak dapat digunakan dengan opsi baris perintah /TestCaseFilter.
/Paralel Menentukan bahwa pengujian dijalankan secara paralel. Secara default, hingga semua inti yang tersedia pada komputer dapat digunakan. Anda dapat mengonfigurasi jumlah inti yang akan digunakan dalam file pengaturan.
/Enablecodecoverage Mengaktifkan CodeCoverage adapter diagnostik data dalam eksekusi pengujian.
Pengaturan default digunakan jika tidak ditentukan menggunakan file pengaturan.
/InIsolation Menjalankan pengujian dalam proses yang terisolasi.
Isolasi ini membuat proses vstest.console.exe cenderung tidak dihentikan pada kesalahan dalam pengujian, tetapi pengujian mungkin berjalan lebih lambat.
/UseVsixExtensions Opsi ini membuat proses vstest.console.exe menggunakan atau melewati ekstensi VSIX yang diinstal (jika ada) dalam eksekusi pengujian.
Opsi ini tidak digunakan lagi. Mulai dari rilis utama Visual Studio berikutnya, opsi ini dapat dihapus. Pindah ke menggunakan ekstensi yang disediakan sebagai paket NuGet.
Contoh: /UseVsixExtensions:true
/TestAdapterPath:[ jalur] Memaksa proses vstest.console.exe untuk menggunakan adaptor pengujian kustom dari jalur tertentu (jika ada) dalam eksekusi pengujian.
Contoh: /TestAdapterPath:[pathToCustomAdapters]
/Platform:[jenis platform] Memaksa platform yang diberikan untuk digunakan, alih-alih platform yang ditentukan dari runtime saat ini. Opsi ini hanya dapat memaksa platform x86, dan x64 di Windows. Opsi ARM rusak dan akan menghasilkan x64 pada sebagian besar sistem.
JANGAN tentukan opsi ini untuk dijalankan pada runtime yang tidak ada dalam daftar nilai yang valid seperti ARM64.
Nilai yang valid adalah x86, x64, dan ARM.
/Framework: [versi kerangka kerja] Targetkan versi .NET yang akan digunakan untuk eksekusi pengujian.
Contoh nilai adalah Framework35, Framework40, Framework45, FrameworkUap10, .NETCoreApp,Version=v1.1.
TargetFrameworkAttribute digunakan untuk mendeteksi opsi ini secara otomatis dari assembly Anda, dan default ke Framework40 saat atribut tidak ada. Anda harus menentukan opsi ini secara eksplisit jika Anda menghapus TargetFrameworkAttribute dari rakitan .NET Core Anda.
Jika kerangka kerja target ditentukan sebagai Framework35, pengujian berjalan di CLR 4.0 "mode kompatibilitas".
Contoh: /Framework:framework40
/TestCaseFilter:[ekspresi] Jalankan pengujian yang cocok dengan ekspresi yang diberikan.
> Ekspresi <adalah properti <format>= nilai<>[|>Ekspresi<].
Contoh: /TestCaseFilter:"Priority=1"
Contoh: /TestCaseFilter:"TestCategory=Nightly|FullyQualifiedName=Namespace.ClassName.MethodName"
Opsi baris perintah /TestCaseFilter tidak dapat digunakan dengan opsi baris perintah /Tests.
Untuk informasi tentang membuat dan menggunakan ekspresi, lihat filter TestCase.
/? Menampilkan informasi penggunaan.
/Logger:[uri/friendlyname] Tentukan pencatat untuk hasil pengujian. Tentukan parameter beberapa kali untuk mengaktifkan beberapa pencatat.
Contoh: Untuk mencatat hasil ke dalam File Hasil Pengujian Visual Studio (TRX), gunakan
/Logger:trx
[; LogFileName=<Default ke nama file unik>]
/ListTests:[ nama file] Mencantumkan pengujian yang ditemukan dari kontainer pengujian yang diberikan.
Catatan: Opsi /TestCaseFilters tidak berpengaruh saat mencantumkan pengujian; itu hanya mengontrol pengujian mana yang dijalankan.
/ListDiscoverers Mencantumkan penemu pengujian yang diinstal.
/ListExecutors Mencantumkan pelaksana pengujian yang diinstal.
/ListLoggers Mencantumkan pencatat pengujian yang diinstal.
/ListSettingsProviders Mencantumkan penyedia pengaturan pengujian yang terinstal.
/ Menyalahkan Menjalankan pengujian dalam mode menyalahkan. Opsi ini berguna dalam mengisolasi pengujian bermasalah yang menyebabkan host pengujian mengalami crash. Ketika crash terdeteksi, itu membuat file urutan di TestResults/<Guid>/<Guid>_Sequence.xml yang menangkap urutan pengujian yang dijalankan sebelum crash. Untuk informasi selengkapnya, lihat Menyalahkan pengumpul data.
/Diag:[ nama file] Menulis log jejak diagnostik ke file yang ditentukan.
/ResultsDirectory:[ jalur] Direktori hasil pengujian akan dibuat di jalur yang ditentukan jika tidak ada.
Contoh: /ResultsDirectory:<pathToResultsDirectory>
/ParentProcessId:[parentProcessId] ID Proses Proses Induk yang bertanggung jawab untuk meluncurkan proses saat ini.
/Port:[port] Port untuk koneksi soket dan menerima pesan peristiwa.
/Collect:[dataCollector friendlyName] Mengaktifkan pengumpul data untuk eksekusi pengujian. Informasi selengkapnya.

Ujung

Opsi dan nilai tidak peka huruf besar/kecil.

Contoh

Sintaks untuk menjalankan vstest.console.exe adalah:

vstest.console.exe [TestFileNames] [Options]

Secara default, perintah mengembalikan 0 ketika keluar secara normal, bahkan jika tidak ada pengujian yang ditemukan. Jika Anda ingin mengembalikan nilai bukan nol jika tidak ada pengujian yang ditemukan, gunakan opsi runsetting <TreatNoTestsAsError>true</TreatNoTestsAsError>.

Perintah berikut menjalankan vstest.console.exe untuk pustaka pengujian myTestProject.dll:

vstest.console.exe myTestProject.dll

Perintah berikut menjalankan vstest.console.exe dengan beberapa file pengujian. Pisahkan nama file pengujian dengan spasi:

vstest.console.exe myTestFile.dll myOtherTestFile.dll

Perintah berikut menjalankan vstest.console.exe dengan beberapa opsi. Ini menjalankan pengujian dalam file myTestFile.dll dalam proses terisolasi dan menggunakan pengaturan yang ditentukan dalam file Local.RunSettings. Selain itu, ini hanya menjalankan pengujian yang ditandai "Priority=1", dan mencatat hasilnya ke file .trx.

vstest.console.exe myTestFile.dll /Settings:Local.RunSettings /InIsolation /TestCaseFilter:"Priority=1" /Logger:trx

Perintah berikut menjalankan vstest.console.exe dengan opsi /blame untuk pustaka pengujian myTestProject.dll:

vstest.console.exe myTestFile.dll /blame

Jika terjadi crash host pengujian, file sequence.xml dihasilkan. File berisi nama pengujian yang sepenuhnya memenuhi syarat dalam urutan eksekusinya hingga dan termasuk pengujian spesifik yang berjalan pada saat crash.

Jika tidak ada crash host pengujian, file sequence.xml tidak akan dihasilkan.

Contoh file sequence.xml yang dihasilkan:

<?xml version="1.0"?>
<TestSequence>
  <Test Name="TestProject.UnitTest1.TestMethodB" Source="D:\repos\TestProject\TestProject\bin\Debug\TestProject.dll" />
  <Test Name="TestProject.UnitTest1.TestMethodA" Source="D:\repos\TestProject\TestProject\bin\Debug\TestProject.dll" />
</TestSequence>

Contoh UWP

Untuk UWP, file appxrecipe harus direferensikan alih-alih DLL.

vstest.console.exe /Logger:trx /Platform:x64 /framework:frameworkuap10 UnitTestsUWP\bin\x64\Release\UnitTestsUWP.build.appxrecipe