programing

NetBeans의 JSTestDriver가 어설션 실패 후 테스트를 중지함

closeapi 2023. 10. 28. 07:57
반응형

NetBeans의 JSTestDriver가 어설션 실패 후 테스트를 중지함

이 링크에 따라 넷빈즈에서 JS Test Driver로 자바스크립트 유닛 테스트를 설정하였습니다.그러나 해당 자습서의 결과와 달리 어설션이 실패한 후에는 더 이상 테스트가 실행되지 않습니다.이 동작을 어떻게 변경할 수 있습니까?

예를 들어, 이 테스트 파일이 주어졌을 때:

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%로 표시됩니다.

enter image description here

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 --test all --config jsTestDriver.conf --tests all --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

세 가지 테스트가 모두 실행됩니다.

크롬에서는 잘 작동하는 것 같습니다.

코멘트와 같은 파이어폭스에 대해서는 정답이 아니라고 했습니다.그럭저럭 부분적으로 일을 처리했습니다.문제는 netbeans가 실패한 테스트를 처리하는 방법과 jstestdriver.jar가 시작되는 방법입니다.이것이 문제를 해결할 수 없다는 것을 알고 있지만 올바른 방향을 가리키고 있습니다.

enter image description here

이것을 재현하는 단계.

  1. 서비스에서 JS 테스트 드라이버 시작
  2. 테스트를 실행합니다.
  3. 제가 리눅스를 사용하고 있기 때문에.현재 사용자를 위해 Netbeans 구성 폴더에서 jstestdriver.properties를 찾았습니다.제 경우에는 위치하고 있습니다.

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

    jstestdriver.jar --tests all --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 테스트 드라이버를 다시 시작합니다.
    • 테스트를 실행합니다.

두 번째 재시작 후 실행하면 위 그림과 같이 모든 테스트를 실행해야 합니다.netbeans의 JS Test Driver에 대해 인수 --test all --reset을 추가할 수 있다면 Chrome에서와 같이 작동할 수 있는 문제를 해결해야 합니다.

언급URL : https://stackoverflow.com/questions/38856677/jstestdriver-on-netbeans-stops-testing-after-a-failed-assertion

반응형