Referensi opsi CLI Microsoft.Testing.Platform (MTP)

Artikel ini memberikan titik masuk pusat untuk opsi baris perintah MTP.

Important

Opsi platform tersedia dari MTP itu sendiri. Opsi ekstensi hanya tersedia ketika setiap aplikasi pengujian yang ditargetkan mendaftarkan paket ekstensi yang menyediakannya. Tambahkan paket secara langsung, atau gunakan konfigurasi atau profil SDK pengujian yang menyertakannya. Jika aplikasi pengujian tidak mendaftarkan ekstensi, eksekusi gagal dengan kode keluar 5 karena opsi tidak dikenali.

Pilihan platform

  • @

    Menentukan nama file respons. Nama file respons harus segera mengikuti @ karakter tanpa spasi kosong antara @ karakter dan nama file respons.

    Opsi dalam file respons ditafsirkan seolah-olah ada di tempat tersebut di baris perintah. Anda tidak dapat menggunakan karakter backslash \ untuk menggabungkan baris. Menggunakan file respons membantu untuk perintah yang sangat panjang yang mungkin melebihi batas terminal. Anda dapat menggabungkan file respons dengan argumen baris perintah secara langsung. Contohnya:

    ./TestExecutable.exe @"filter.rsp" --timeout 10s
    

    di mana filter.rsp dapat memiliki konten berikut:

    --filter "A very long filter"
    

    Atau satu file rsp dapat digunakan untuk menentukan batas waktu dan filter sebagai berikut:

    ./TestExecutable.exe @"arguments.rsp"
    
    --filter "A very long filter" --timeout 10s
    

    Nota

    Saat menggunakan dotnet test, pengurai baris perintah SDK menggunakan pendekatan token per baris di mana setiap baris dalam file respons diperlakukan sebagai token tunggal. Dalam hal ini, setiap argumen harus berada di baris terpisah:

    --filter
    A very long filter
    --timeout
    10s
    
  • --config-file

    Menentukan file testconfig.json.

  • --debug

    Menjeda eksekusi pengujian saat startup sehingga Anda dapat melampirkan debugger ke proses pengujian. Setara dengan mengatur TESTINGPLATFORM_WAIT_ATTACH_DEBUGGERvariabel lingkungan ke 1. Tidak didukung pada platform browser.

    Nota

    Opsi ini tersedia di MTP yang dimulai dengan versi 1.9.0. Ini menggantikan opsi sebelumnya --debug-wait-attach (diperkenalkan dalam MTP 1.6.0); nama lama dihapus dan tidak boleh lagi digunakan.

  • --diagnostic

    Mengaktifkan pembuatan log diagnostik. Tingkat log default adalah Trace. Untuk setiap sumber pengujian, MTP menulis <asm>_<tfm>_<arch>_<timestamp>.diag. Jika stempel waktunya sama, MTP menambahkan akhiran proses dan penghitung alih-alih menimpa berkas yang sudah ada.

  • --diagnostic-synchronous-write

    Memaksa pencatat file bawaan untuk menulis log secara sinkron. Berguna untuk skenario di mana Anda tidak ingin kehilangan entri log apa pun (jika proses crash). Ini memperlambat eksekusi pengujian.

    Nota

    Tersedia di MTP yang dimulai dengan versi 2.0.0. Ini menggantikan opsi sebelumnya --diagnostic-filelogger-synchronouswrite , yang dihapus di MTP 2.0.0.

  • --diagnostic-output-directory

    Direktori keluaran untuk pencatatan diagnostik, jika tidak ditentukan, file akan dihasilkan dalam direktori default TestResults.

  • --diagnostic-file-prefix

    Awalan untuk nama file log. Defaultnya adalah <asm>_<tfm>_<arch>.

    Nota

    Tersedia di MTP yang dimulai dengan versi 2.0.0. Ini menggantikan opsi sebelumnya --diagnostic-output-fileprefix , yang dihapus di MTP 2.0.0.

  • --diagnostic-verbosity

    Menentukan tingkat verbositas saat sakelar --diagnostic digunakan. Nilai yang tersedia adalah Trace, Debug, Information, Warning, Error, atau Critical.

  • --enable-dynamic-extensions

    Memungkinkan pemuatan ekstensi yang dideklarasikan oleh file manifes *.testingplatformextensions.json yang berada di samping aplikasi pengujian. Ekstensi dinamis dinonaktifkan secara default. Untuk persyaratan keamanan dan skema manifes, lihat Memuat ekstensi secara dinamis.

    Nota

    Opsi ini tersedia di MTP yang dimulai dengan versi 2.4.0.

  • --exit-on-process-exit

    Hentikan proses pengujian jika proses dependen berhenti. PID harus disediakan.

  • --filter-uid

    Menyaring pengujian yang akan dijalankan berdasarkan UID simpul uji. Menerima satu atau beberapa UID.

    Nota

    Opsi ini tersedia di MTP yang dimulai dengan versi 1.8.0. Mulai dari MTP 2.3.0, Anda tidak dapat menggabungkan --filter-uid dengan --treenode-filter; jika keduanya ditentukan, validasi baris perintah akan gagal dengan kode keluar InvalidCommandLine.

  • --help

    Mencetak deskripsi cara menggunakan perintah.

  • --ignore-exit-code

    Memungkinkan beberapa kode keluar bukan nol diabaikan atau sebaliknya dikembalikan sebagai 0. Untuk informasi selengkapnya, lihat Abaikan kode keluar tertentu.

  • --info

    Menampilkan informasi lanjutan tentang Aplikasi Pengujian .NET seperti:

    • Platform tersebut.
    • Lingkungan.
    • Setiap penyedia baris perintah terdaftar, seperti name, version, description, dan options.
    • Setiap alat terdaftar, seperti command, name, version, description, dan semua penyedia baris perintah.

    Fitur ini digunakan untuk memahami ekstensi yang akan mendaftarkan opsi baris perintah yang sama atau perubahan opsi yang tersedia antara beberapa versi ekstensi (atau platform).

  • --list-tests

    Mencantumkan pengujian yang tersedia tanpa mengeksekusinya. Secara opsional mengambil argumen yang mengontrol format output: text (default, dapat dibaca manusia) atau json.

    Nota

    json Format output tersedia di MTP yang dimulai dengan versi 2.3.0.

  • --maximum-failed-tests

    Menentukan jumlah maksimum kegagalan pengujian yang, ketika tercapai, akan menghentikan eksekusi pengujian. Dukungan untuk sakelar ini memerlukan pengembang kerangka kerja untuk mengimplementasikan kemampuan IGracefulStopTestExecutionCapability. Kode keluar saat mencapai jumlah kegagalan pengujian adalah 13. Untuk informasi selengkapnya, lihat Kode keluar MTP.

    Nota

    Fitur ini tersedia di MTP yang dimulai dengan versi 1.5.

  • --minimum-expected-tests

    Menentukan jumlah minimum pengujian yang harus dijalankan. Ketika run menjalankan lebih sedikit pengujian, termasuk nol, proses tersebut akan keluar dengan kode 9. Minimum eksplisit mengesampingkan --zero-tests-policy.

  • --no-banner

    Menonaktifkan banner startup, pesan hak cipta, dan banner telemetri. Efek yang sama dapat dicapai melalui TESTINGPLATFORM_NOBANNERDOTNET_NOLOGO atau .

  • --results-directory

    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.

  • --server

    Memulai aplikasi pengujian dalam mode server JSON-RPC untuk editor, IDE, atau integrasi alat. Hilangkan nilai atau gunakan jsonrpc. Untuk klien yang hanya berfungsi sebagai sumber dan didukung, lihat mode server MTP.

    Important

    Nilai dotnettestcli dan argumen transportasinya bersifat internal untuk integrasi SDK .NET. Jangan lewati secara manual.

  • --show-slowest-tests

    Menampilkan jumlah pengujian paling lambat yang diminta dalam ringkasan terminal. Saat suatu eksekusi mencakup beberapa modul pengujian, MTP melaporkan pengujian yang berjalan paling lambat untuk setiap modul.

    Nota

    Opsi ini tersedia di MTP yang dimulai dengan versi 2.4.0.

  • --timeout

    Batas waktu eksekusi pengujian global. Mengambil satu argumen sebagai string dalam format <value>[h|m|s] di mana <value> mengambang.

  • --treenode-filter

    Memfilter pengujian yang akan dijalankan dengan menggunakan ekspresi filter pohon. Filter pohon menawarkan pencocokan yang lebih kaya daripada --filter untuk skenario tingkat lanjut.

    Nota

    Mulai dari MTP 2.3.0, Anda tidak dapat menggabungkan --treenode-filter dengan --filter-uid; jika keduanya ditentukan, validasi baris perintah akan gagal dengan kode keluar InvalidCommandLine.

  • --zero-tests-policy

    Mengontrol apakah eksekusi yang tidak menjalankan satu pun pengujian karena semua pengujian dilewati diperlakukan sebagai kegagalan. Nilai yang valid adalah allow-skipped (default) dan strict. Dengan allow-skipped, proses eksekusi yang seluruh langkahnya dilewati berhasil. Dengan strict, gagal dengan kode keluar 8. Nilai eksplisit --minimum-expected-tests menggantikan kebijakan ini dan menggunakan kode 9 keluar saat minimum tidak terpenuhi.

    Nota

    Opsi ini tersedia di MTP yang dimulai dengan versi 2.3.0.

Opsi ekstensi menurut skenario

Gunakan tabel berikut untuk menemukan paket dan opsi setiap ekstensi. Profil SDK pengujian dapat menyediakan paket alih-alih referensi paket langsung.

Skenario Komponen yang diperlukan Dokumentasi fitur
Mengumpulkan cakupan kode Microsoft.Testing.Extensions.CodeCoverage atau coverlet.MTP Cakupan kode
Mengumpulkan crash atau hang dump Microsoft.Testing.Extensions.CrashDump atau Microsoft.Testing.Extensions.HangDump Crash dan hang dump
Hasilkan laporan pengujian Paket ekstensi untuk format yang dipilih, seperti Microsoft.Testing.Extensions.TrxReport Laporan pengujian
Menyesuaikan output terminal MTP core (tanpa paket tambahan) Keluaran terminal
Coba lagi pengujian yang gagal Microsoft.Testing.Extensions.Retry Coba lagi

Menemukan opsi di aplikasi pengujian Anda

Jalankan executable pengujian Anda dengan --help, atau jalankan dotnet test --help dalam mode MTP, untuk mencantumkan opsi yang tersedia untuk set ekstensi Anda saat ini.

Untuk diagnostik tingkat lanjut dari penyedia dan opsi terdaftar, jalankan dengan --info.

Baca juga