Apakah ada cara untuk menjalankan ng test
satu file alih-alih untuk seluruh rangkaian uji? Idealnya, saya ingin mendapatkan loop umpan balik sesegera mungkin ketika saya mengedit file, tetapi karma
mengeksekusi seluruh rangkaian pada setiap penyimpanan, yang agak lambat ketika Anda membangun test suite yang cukup besar.
Ini berbeda dari Bagaimana menjalankan hanya satu spec tes dengan angular-cli dalam pertanyaan itu adalah tentang menjalankan spec individual. Ini tentang menjalankan file individual. Solusinya melibatkan fitur spesifikasi Jasmine yang sama, tetapi sifat pertanyaannya sedikit berbeda.
angular
jasmine
angular-cli
karma-runner
Elliot Larson
sumber
sumber
Jawaban:
Saya menemukan bahwa Jasmine memungkinkan Anda untuk awalan
describe
danit
metode denganf
(untuk fokus?). Jadi,fdescribe
danfit
. Jika Anda menggunakan salah satu dari ini, karma hanya akan menjalankan tes yang relevan. Jadi, untuk memfokuskan file saat ini, Anda bisa mengambil level atasdescribe
dan mengubahnya kefdescribe
. Bekerja untuk tujuan saya.sumber
Perlu disebutkan bahwa Anda dapat menonaktifkan tes tertentu tanpa berkomentar oleh
xdescribe
danxit
Dan seperti yang sudah dikatakan seseorang jika Anda ingin fokus pada beberapa tes lalu
fdescribe
danfit
sumber
Ini dapat dicapai hari ini melalui
include
opsi. https://angular.io/cli/test#optionsIni pertandingan glob, jadi sebagai contoh:
Saya tidak dapat menemukannya di catatan rilis 8.1.0 , tetapi @Swoox menyebutkan di bawah ini adalah fitur setelah versi cli
8.1.0
. Terima kasih telah memikirkannya.sumber
Saya menemukan bahwa
ng test
memiliki opsi tambahan--include
yang dapat Anda gunakan untuk dapat menjalankan tes untuk satu file, atau untuk direktori tertentu, atau untuk banyak file:ng cli docs
sumber
Anda dapat pergi ke
src/test.ts
dan dapat mengubah baris berikut:const context = require.context('./', true, /\.spec\.ts$/);
untuk
const context = require.context('./', true, /**yourcomponent.component**\.spec\.ts$/);
sumber
Ekstensi Kode Visual Studio
Cara termudah adalah dengan menggunakan ekstensi vscode-test-explorer bersama dengan child -karma-test-explorer dan adaptor jasmine-test , Anda akan mendapatkan daftar tes saat ini untuk menjalankan satu per satu jika Anda ingin:
Ini adalah jawaban yang sama yang saya berikan pada pertanyaan ini , ada beberapa detail lagi di sana.
sumber
Menggunakan ng test --main file.spec.ts
sumber
Anda harus pergi
src/test.ts
dan dapat mengubah kode nomor baris berikut 18:untuk
sumber
Berfungsi jika Anda menentukan file spesifikasi Anda sebagai parameter.
Sebagai contoh:
ng test foo.spec.ts
Semoga ini membantu.
sumber