PhantomJS를 사용하여 AngularJS 애플리케이션을 테스트하고 싶습니다. 첫 번째 단계는 로그인 양식을 username
필드로 채우는 것입니다 (다른 필드가 없다고 가정 해 봅시다).
일반적으로 (실제 브라우저에서)이 필드는 각도 (0-속성)로 제어되며 전체 양식은 ng-submit
속성을가집니다.PhantomJS를 사용하여 Angular.js 앱에서 양식 작성
그래서 PhantomJS 스크립트에서 나는
입력 이름
page.evaluate(function() { document.getElementsByName('username')[0].value = 'tester'; });
걸릴 스크린 샷을하고 '테스터'제출에 입력
page.render('myfile.jpg');
클릭에 존재하는 것을 볼 수 버튼 :
page.evaluate(function() { document.getElementById('go').click(); });
다른 스크린 샷을 촬영하십시오.
내가 볼하는 일이 버튼을 클릭 가져옵니다,하지만 메시지는 username
의 값이 비어 있다고하는 표시됩니다. 그래서 모델이 제대로 업데이트되지 않았을 것입니다.
또한 jQuery를 사용하여 이러한 값을 설정하려고 시도했습니다. 동일한 결과가 나타납니다.
각도로 제어되는 필드에 값을 올바르게 입력하려면 어떻게해야합니까?
비슷한 문제가 있고 ** [이 예제] (http://code-epicenter.com/how-to-login-amazon-using-phantomjs-working-example/) ** [코드 진원지] (http://code-epicenter.com/)은 현재 내가 찾은 최고이며, 현재 내 지역 Angular app에서도 테스트 중입니다. [CasperJS] (http://casperjs.org/)의 예가 있습니다. – fitzpaddy