1

PhantomJS를 사용하는 헤드리스 브라우저 테스트에 CasperJS를 사용하려고 시도했으며 설정 파일이나 웹 사이트 URL, 사용자 이름 비밀번호 등을 변경하려고했습니다. 결국 마침내 NuclearJS을 발견했습니다. 이 일을하는 다른 완벽한 방법을 아십니까? 내가 처음부터 쓰고 싶다면 잘 알고 싶다.CasperJS 및 구성 파일을 사용하는 프론트 엔드 헤드리스 브라우저 테스트?

답변

1

여러 구성 파일 (선택기, 실행, 데스크톱, 모바일 등)을 사용하는 솔루션 (완벽하지는 않습니다)이 있습니다.
나는 내 casperjs 테스트에서 필자가 필요로하는 모든 설정을 제공하는 파일을 테스트한다. (나는 거기에 전역 함수를 포함한다.) 그 예 loadGlobals.js에서

casperjs test --includes=loadGlobals.js test_1.js 

그런 기능이 포함되어 있습니다 :

var fs = require('fs'); 
    var config = {}, 
     configFile = fs.read('config.json'); 
    config = JSON.parse(configFile); 

Probalby config.json 그렇게 찾고 :

{ 
     "url": "http://www.yourTestUrl.com", 
     "variable_1": "bla", 
     "variable_2": "blub", 
     "nextTier": { 
      "variable_1": "blablub" 
     } 
    } 
은 테스트 실행 그렇게 보이는 것 같아요 수 있습니다

이제 test_1.js에서 config.json의 변수를 호출 할 수 있습니다.

casper.start(config.url, function() { 
    casper.then(function() { 
    casper.echo(config.variable_1); 
    casper.echo(config.variable_2); 
    casper.echo(config.nextTier.variable_1); 
    }); 
}) 
casper.run(); 

nessacary 인 경우 테스트 중에 다른 구성 파일을 사용할 수도 있습니다.
테스트는 페이지 객체 패턴 스타일로 작성되어야 매우 전문적이며 아웃소싱 된 구성이 가능합니다.


NuclearJS는 잘 모릅니다. 그러나 나는 그것에 대해서도 살펴볼 것입니다.

+0

변수 설정을 찾을 수 없다는 메시지가 나타납니다. – Shamendra

+0

--includes = loadGlobals.js와 같은 테스트 실행에 loadGlobals.js를 포함 시켰습니까? – dasmelch

+0

예 내가 언급 한 내용을 포함 시켰습니다 – Shamendra

관련 문제