JsTestDriver บน NetBeans หยุดการทดสอบหลังจากการยืนยันที่ล้มเหลว


178

ฉันได้ตั้งค่าการทดสอบหน่วย JavaScript กับ JS Test Driver บน Netbeans ตามลิงค์นี้ อย่างไรก็ตามไม่เหมือนกับผลลัพธ์ในบทช่วยสอนนั้นจะไม่มีการทดสอบอีกต่อไปหลังจากการยืนยันล้มเหลว ฉันจะเปลี่ยนพฤติกรรมนี้ได้อย่างไร

ตัวอย่างเช่นให้ไฟล์ทดสอบนี้:

test.jsไฟล์:

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);
};

แถบความคืบหน้าแสดง 50% (ทดสอบ 2 ครั้ง) ควรบอกว่า 33%

ป้อนคำอธิบายรูปภาพที่นี่

jsTestDriver.confไฟล์:

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

ฉันสามารถทำการทดสอบทั้งหมดโดยใช้บรรทัดคำสั่ง (บน Windows PowerShell) ทำงานดังนี้ทดสอบไม่หยุดทำงานหลังจากความล้มเหลว:


java -jar $ env: JSTD \ JsTestDriver-1.3.5.jar - ทดสอบทั้งหมด --config jsTestDriver.conf

jsTestDriver.confไฟล์:

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

การทดสอบทั้งสามจะดำเนินการ


8
คุณลองกับเบราว์เซอร์อื่นหรือไม่? เนื่องจากมันทำงานจากบรรทัดคำสั่งฉันถือว่าความล้มเหลวเกิดจาก netbeans หรือเบราว์เซอร์
Silu

3
สิ่งนี้จะช่วยคุณได้ไหม jasmine --stop-on-failure = false jasmine.github.io/2.5/node.html#section-21
ลุ

บางทีความคิดเห็นที่นี่อาจช่วยstackoverflow.com/questions/22119193/…
Robert Fines

ฉันคิดว่าการทดสอบการทดสอบเน็ตเวิร์กเป็นเรื่องที่คุ้มค่าอย่างน้อยกับมอคค่า
Duncan

คำตอบ:


1

ดูเหมือนว่าใน Chrome จะทำงานได้ดี ป้อนคำอธิบายรูปภาพที่นี่

เกี่ยวกับ Firefox ในขณะที่ความเห็นบอกว่ามันไม่ถูกต้อง ฉันจัดการเพื่อให้มันทำงานได้บางส่วน ปัญหาคือวิธีที่ netbeans จัดการกับการทดสอบที่ล้มเหลวและวิธีการเริ่มต้น jstestdriver.jar ฉันรู้ว่านี่ไม่ได้แก้ปัญหา แต่มันชี้ไปในทิศทางที่ถูกต้อง

ป้อนคำอธิบายรูปภาพที่นี่

ขั้นตอนในการทำซ้ำนี้

  1. เริ่มต้น JS Test Driver จากบริการ
  2. เรียกใช้การทดสอบ
  3. ตั้งแต่ฉันใช้ linux ฉันพบ jstestdriver.properties จากโฟลเดอร์การกำหนดค่า Netbeans สำหรับผู้ใช้ปัจจุบัน ในกรณีของฉันมันตั้งอยู่ใน

    /home/{user}/.netbeans/8.2/config/Preferences/org/netbeans/modules/javascript/jstestdriver.properties

    แก้ไขคุณสมบัติตำแหน่งโดยเพิ่มอาร์กิวเมนต์ใน jstestdriver.jar - ทดสอบทั้งหมด --reset หลังจากแก้ไขคุณสมบัติของฉันดูเหมือนว่านี้

    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. ทำซ้ำ 2 ครั้ง

    • รีสตาร์ท JS Test Driver จาก Services
    • เรียกใช้การทดสอบ

หลังจากรีสตาร์ทและเรียกใช้ครั้งที่สองมันควรจะทำการทดสอบทั้งหมดตามภาพด้านบน หากคุณสามารถเพิ่มอาร์กิวเมนต์ - ทดสอบทั้งหมด - รีเซ็ตสำหรับ JS Test Driver ใน Netbeans ควรแก้ไขปัญหาเพื่อให้ทำงานได้เหมือนใน Chrome

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.