Saya telah menyiapkan pengujian unit JavaScript dengan JS Test Driver di Netbeans sesuai Tautan ini . Namun, tidak seperti hasil dalam tutorial itu, tidak ada lagi tes yang dijalankan setelah pernyataan gagal. Bagaimana saya bisa mengubah perilaku ini?
Misalnya, diberikan file tes ini:
The test.js
File:
AssertionsTestCase = TestCase("AssertionsTestCase");
AssertionsTestCase.prototype.testAlwaysPass = function(){
assertEquals(1, 1);
assertEquals(2, 2);
};
AssertionsTestCase.prototype.testAlwaysFail1 = function(){
assertEquals(1, 2);
};
AssertionsTestCase.prototype.testAlwaysFail2 = function(){
assertEquals(3, 4);
};
bilah kemajuan menunjukkan 50%, (2 tes), itu harus mengatakan 33%.
The jsTestDriver.conf
File:
server: http://localhost:42442
load:
- test/lib/jasmine/jasmine.js
- test/lib/jasmine-jstd-adapter/JasmineAdapter.js
- test/unit/*.js
Saya dapat memiliki semua tes dijalankan oleh baris perintah. (Di Windows PowerShell). Berjalan sebagai berikut, tes tidak berhenti berjalan setelah kegagalan:
java -jar $ env: JSTD \ JsTestDriver-1.3.5.jar --test all --config jsTestDriver.conf
yang jsTestDriver.conf
berkas:
server: http://localhost:4244
load:
- test/lib/jasmine/jasmine.js
- test/lib/jasmine-jstd-adapter/JasmineAdapter.js
- test/unit/*.js
Ketiga tes dijalankan.
Jawaban:
Sepertinya di Chrome berfungsi dengan baik.
Mengenai Firefox seperti dalam komentar mengatakan itu bukan jawaban yang benar. Saya telah berhasil membuatnya bekerja sebagian. Masalahnya adalah bagaimana netbeans menangani tes yang gagal dan bagaimana jstestdriver.jar dimulai. Saya tahu ini tidak menyelesaikan masalah tetapi menunjuk ke arah yang benar.
Langkah-langkah untuk mereproduksi ini.
Karena saya menggunakan linux. Saya telah menemukan jstestdriver.properties dari folder konfigurasi Netbeans untuk pengguna saat ini. Dalam kasus saya ini terletak di
/home/{user}/.netbeans/8.2/config/Preferences/org/netbeans/modules/javascript/jstestdriver.properties
Edit properti lokasi dengan menambahkan argumen ke jstestdriver.jar --tests all --reset. Setelah mengedit properti saya terlihat seperti ini.
location=/home/user/Downloads/jstestdriver-1.3.5.jar --tests all --reset server.url=http://localhost:42442 strict.mode=false use.browser.ANDROID_DEVICE_CHROME=false use.browser.ANDROID_DEVICE_DEFAULT=false use.browser.ANDROID_EMULATOR_DEFAULT=false use.browser.Chrome=false use.browser.Chrome.INTEGRATED=false use.browser.SL__Browsers_FirefoxBrowser=true use.browser.SL__Browsers_MozillaBrowser=false
Ulangi 2 kali.
Setelah restart dan jalankan kedua, itu harus menjalankan semua tes seperti pada gambar di atas. Jika Anda dapat menambahkan argumen --test all --reset untuk JS Test Driver di Netbeans, itu harus menyelesaikan masalah agar berfungsi seperti di Chrome.
sumber