문제

angularjs

를 테스트하기 위해 각도기를 사용하고 있습니다.

테스트가 끝나지 않은 예외가 발생하지 않고 브라우저 콘솔에 인쇄되지 않았습니다.

그 일을하는 간단한 방법이 있습니까?

도움이 되었습니까?

해결책

재 스민으로 각도기를 사용하는 경우 다음 코드를 사용하십시오.

afterEach(function() {
    browser.manage().logs().get('browser').then(function(browserLog) {
        expect(browserLog.length).toEqual(0);
    });
});
.

콘솔 오류가없는 경우 테스트 케이스가 전달됩니다.콘솔 오류가 있으면 테스트가 실패합니다.

브라우저의 콘솔의 내용에 액세스하는 방법에 대한 지침은 FAQ의 브라우저의 콘솔 섹션을 어떻게 보유 할 수 있습니까?

다른 팁

약간의 노력으로 cucumber.js와 함께 작동하도록 허용 된 답변을 조정할 수 있습니다.

this.After(function(callback) {
    browser.manage().logs().get('browser').then(function(browserLog) {
        if (browserLog.length !== 0) {
            var failMessage = "There was output in the browser console:" +
                              browserLog.map(JSON.stringify).join(";\n");
            callback.fail(failMessage);
        }
        else {
            callback();
        }
    });
});
.

jasmine의 jasmine의 afterEach와 동등한 오이입니다.

@velochy가 @Velochy가 https : //www.npmjs.com/package/protractor-console-plugin

protractor.conf에서 사용할 수 있습니다 :

  plugins: [{
    package: 'protractor-console-plugin',
    failOnWarning: {Boolean}                (Default - false),
    failOnError: {Boolean}                  (Default - true),
    logWarnings: {Boolean}                  (Default - true),
    exclude: {Array of strings and regex}   (Default - [])
  }]
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top