Bagikan melalui


Ekstensi VSTest Bridge

Ekstensi ini menyediakan lapisan kompatibilitas dengan VSTest yang memungkinkan kerangka kerja pengujian bergantung padanya untuk terus mendukung beroperasi dalam mode VSTest (vstest.console.exe, biasa dotnet test, VSTest task di AzDo, Test Explorers Visual Studio dan Visual Studio Code...). Ekstensi ini disertakan sebagai bagian dari paket Microsoft.Testing.Extensions.VSTestBridge.

Kompatibilitas dengan VSTest

Tujuan utama ekstensi ini adalah untuk menawarkan pengalaman peningkatan yang mudah dan lancar untuk pengguna VSTest dengan memungkinkan mode ganda di mana platform baru diaktifkan dan secara paralel mode kompatibilitas ditawarkan untuk memungkinkan alur kerja yang biasa terus berfungsi.

Dukungan pengaturan menjalankan

Ekstensi ini memungkinkan Anda untuk menyediakan VSTest .runsettings file, tetapi tidak semua opsi dalam file ini diproses oleh platform. Kami menjelaskan di bawah pengaturan, opsi konfigurasi, dan alternatif yang didukung dan tidak didukung untuk opsi konfigurasi VSTest yang paling banyak digunakan.

Saat diaktifkan oleh kerangka kerja pengujian, Anda dapat menggunakan --settings <SETTINGS_FILE> untuk menyediakan file .runsettings.

Elemen RunConfiguration

Elemen RunConfiguration berikut tidak didukung oleh Microsoft.Testing.Platform:

Simpul Deskripsi Alasan / Solusi
MaxCpuCount Pengaturan ini mengontrol tingkat paralelisme pada tingkat proses. Gunakan 0 untuk mengaktifkan paralelisme tingkat proses maksimum. Ketika Microsoft.Testing.Platform digunakan dengan MSBuild, opsi ini dialihkan ke MSBuild. Ketika satu executable dijalankan, opsi ini tidak memiliki arti untuk Microsoft.Testing.Platform.
DirektoriHasil Direktori tempat hasil pengujian ditempatkan. Jalur relatif terhadap direktori yang berisi file .runsettings. Gunakan opsi baris perintah --results-directory untuk menentukan direktori tempat hasil pengujian akan ditempatkan. Jika direktori yang ditentukan tidak ada, direktori tersebut akan dibuat. Defaultnya adalah TestResults di direktori yang berisi aplikasi pengujian.
TargetFrameworkVersion Pengaturan ini menentukan versi kerangka kerja, atau keluarga kerangka kerja yang akan digunakan untuk menjalankan pengujian. Opsi ini diabaikan. Properti MSBuild <TargetFramework> atau <TargetFrameworks> menentukan kerangka kerja target aplikasi. Pengujian dihosting di aplikasi akhir.
TargetPlatform Pengaturan ini menentukan arsitektur yang akan digunakan untuk menjalankan pengujian. <RuntimeIdentifier> menentukan arsitektur aplikasi akhir yang menghosting pengujian.
PerlakukanKesalahanAdaptorPengujianSebagaiPeringatan Mengubah kesalahan adaptor pengujian menjadi peringatan. Microsoft.Testing.Platform hanya memungkinkan satu jenis pengujian dijalankan dari satu assembly, dan kegagalan untuk memuat kerangka kerja pengujian atau bagian infrastruktur lainnya akan menjadi kesalahan yang tidak dapat dilewati, karena menandakan bahwa beberapa pengujian tidak dapat ditemukan atau dijalankan.
JalurPengujianAdaptor Satu atau beberapa jalur ke direktori tempat TestAdapters berada Microsoft.Testing.Platform tidak menggunakan konsep adaptor pengujian dan tidak mengizinkan pemuatan ekstensi dinamis kecuali mereka adalah bagian dari build, dan terdaftar di Program.cs, baik secara otomatis melalui target build atau secara manual.
TestCaseFilter Filter untuk membatasi pengujian yang akan berjalan. Dimulai dengan v1.6, entri runsettings ini sekarang didukung. Sebelum versi ini, Anda harus menggunakan opsi baris perintah --filter sebagai gantinya.
TestSessionTimeout Memungkinkan pengguna untuk mengakhiri sesi pengujian ketika melebihi batas waktu tertentu. Tidak ada opsi alternatif.
dotnetHostPath Tentukan jalur kustom ke host dotnet yang digunakan untuk menjalankan host pengujian. Microsoft.Testing.Platform tidak melakukan penyelesaian tambahan untuk Dotnet. Ini tergantung sepenuhnya pada bagaimana dotnet menyelesaikan dirinya sendiri, yang dapat dikontrol oleh variabel lingkungan seperti DOTNET_HOST_PATH.
TreatNoTestsAsError Keluar dengan kode keluar bukan nol ketika tidak ada pengujian yang ditemukan. Microsoft.Testing.Platform akan mengalami kesalahan secara default ketika tidak ada pengujian yang ditemukan atau dijalankan dalam aplikasi pengujian. Anda dapat mengatur berapa banyak pengujian yang ingin Anda temukan di perakitan dengan menggunakan parameter baris perintah --minimum-expected-tests, yang defaultnya menjadi 1.

Elemen Pengumpul Data

Microsoft.Testing.Platform tidak menggunakan pengumpul data. Sebaliknya memiliki konsep ekstensi dalam proses dan di luar proses. Setiap ekstensi dikonfigurasi oleh file konfigurasi masing-masing atau melalui baris perintah.

Yang paling penting ekstensi menggantung dan ekstensi crash, dan ekstensi cakupan kode .

Elemen LoggerRunSettings

Perekam log dalam Microsoft.Testing.Platform dikonfigurasi melalui parameter baris perintah terminal atau dengan pengaturan dalam kode.

Dukungan filter VSTest

Ekstensi ini juga menawarkan kemampuan untuk menggunakan mekanisme pemfilteran VSTest untuk menemukan atau menjalankan hanya pengujian yang cocok dengan ekspresi filter. Untuk informasi selengkapnya, lihat bagian detail opsi Filter atau untuk detail spesifik kerangka kerja, lihat halaman Menjalankan pengujian unit selektif .

Saat diaktifkan oleh kerangka kerja pengujian, Anda dapat menggunakan --filter <FILTER_EXPRESSION>.

Parameter Tes Jalankan

Anda dapat meneruskan parameter ke uji coba dengan menggunakan opsi baris perintah --test-parameter dalam format key=value. Opsi ini dapat ditentukan beberapa kali, satu untuk setiap parameter yang akan diatur.

Parameter ini kemudian dapat diakses oleh kerangka kerja pengujian dalam eksekusi pengujian:

  • untuk MSTest, gunakan Properties
  • untuk NUnit, gunakan TestContext.TestParameters