각도기/WebDriver를 사용하여 단위 테스트를 수행 할 수있는 방법이 있습니까? 내가 이상적으로하고 싶은 것은 단일 지시어/구성 요소를 격리하고, 종속성을 모방하고, 다양한 데이터 비트를 주입하고, 일련의 브라우저에서 각도기로 처리하는 것입니다.각도기를 사용한 각도 JS 지시 테스트
이렇게하는 방법이 있습니까?
각도기/WebDriver를 사용하여 단위 테스트를 수행 할 수있는 방법이 있습니까? 내가 이상적으로하고 싶은 것은 단일 지시어/구성 요소를 격리하고, 종속성을 모방하고, 다양한 데이터 비트를 주입하고, 일련의 브라우저에서 각도기로 처리하는 것입니다.각도기를 사용한 각도 JS 지시 테스트
이렇게하는 방법이 있습니까?
각도기 (일반적으로 셀레늄)는 일반적으로 기술적이지 않은 최종 사용자가 스스로 수행 할 수있는 테스트 종류를 자동화하기위한 것입니다. 그런데 서버에서 다양한 오류 조건을 시뮬레이트하는 것이 유용 할 때가 있습니다. 당신은 몇 가지 옵션이 있습니다 :
OnPrepare입니다 스크립트를 그렇게 미리 할 수 있다면 사용 onPrepare
스크립트, 당신이 할 수있는만큼 백엔드 설치 작업을 수행합니다. 각도기 구성 파일 (see sample here) 안에 onPrepare
속성을 설정하여 데이터베이스에서 레코드를 설정하거나 파일을 만들거나 다른 작업을 수행 할 수있는 준비 스크립트를 가리 키도록하십시오.
사용 protractor.addMockModule :이는 본질적으로 Protractor.get가 호출 될 때마다 각도 전에로드 모듈을 추가하여 백엔드 API를 조롱 할 수 있습니다. 샘플에 대한 블로그 게시물을 참조하십시오 ("기초를 넘어서"를 검색) :
http://product.moveline.com/testing-angular-apps-end-to-end-with-protractor.html
구성 테스트 전용 경로를 서버에서 : 최후의 수단으로, 서버에 대한 몇 가지 경로를 구성 할 수 엔드 - 투 - 엔드 테스트에서 필요한 모든 백엔드 처리를 수행하는 개발 환경에서만 액세스 할 수 있습니다. 예를 들어 Express.js와 함께 Node.js를 사용하는 경우 아래와 같이 할 수 있습니다.
테스트 전용 노선 :
// Store your server-side e2e methods in this file
var e2eBackend = require('./test/e2eBackend');
if (app.get('env') === "development") {
app.get('/e2e/simulateCrash', e2eBackend.simulateCrash);
// etc.
}
각도기는 주로 e2e 테스트에 사용됩니다. 최종 사용자 관점에서 테스트. 단위 테스트 및 각도기에 재스민 프레임 작업을 사용할 수 있습니다. e2e 테스트에서는 재스민도 지원합니다.
나뿐만 아니라 모든 테스트 지금 (재스민과) 카르마를 사용하고 있지만, 당신이 말한 것처럼, 즉 단위 테스트의 사용자의 관점에서되지 않습니다 . 내가 뭘하고 싶은지 사용자의 관점 (각도기)에서 테스트하지만, 테스트중인 구성 요소의 상태를 제어 할 수 있습니다. e2e 테스트에서 모든 오류 조건을 시뮬레이션하는 것이 항상 쉬운 것은 아닙니다. 특정 위젯이 서버 장애를 처리하는지 또는 인터넷 연결이 끊어 졌는지 테스트하려면 어떻게합니까? – nicholas