JsTestDriver di NetBeans berhenti menguji setelah pernyataan yang gagal

178

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.jsFile:

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%.

masukkan deskripsi gambar di sini

The jsTestDriver.confFile:

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.confberkas:

server: http://localhost:4244
load:
  - test/lib/jasmine/jasmine.js
  - test/lib/jasmine-jstd-adapter/JasmineAdapter.js
  - test/unit/*.js

Ketiga tes dijalankan.

CL22
sumber
8
Apakah Anda mencobanya dengan browser lain? Karena ini bekerja dari baris perintah, saya menganggap kegagalan itu disebabkan oleh netbeans atau browser.
Silu
3
Apakah ini akan membantu Anda? jasmine --stop-on-failure = false jasmine.github.io/2.5/node.html#section-21
Luke
Mungkin komentar di sini dapat membantu stackoverflow.com/questions/22119193/...
Robert Fines
Saya pikir penanganan tes netbite bermasalah, setidaknya dengan Mocha.
Duncan

Jawaban:

1

Sepertinya di Chrome berfungsi dengan baik. masukkan deskripsi gambar di sini

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.

masukkan deskripsi gambar di sini

Langkah-langkah untuk mereproduksi ini.

  1. Mulai Driver Uji JS dari Layanan
  2. Jalankan tes.
  3. 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

  4. Ulangi 2 kali.

    • Mulai ulang Penguji Tes JS dari Layanan.
    • Jalankan tes.

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.

exp2Tapavicki
sumber