나는 셀레늄 테스트뿐만 아니라 오이 테스트도 처음이다. 단일 브라우저에서 모든 오이 테스트 케이스를 실행할 수 있도록 도와주세요. 지금은 새 WebDriver 오브젝트를 작성 중입니다. 기능 파일에 대한 각 오이 step_def.단일 브라우저에서 모든 오이 기능성 자동화 테스트 케이스를 실행하는 방법
답변
해결 방법은 step_def에서 동일한 웹 드라이버 개체를 사용/전달하는 것입니다. 귀하의 질문에서 나는 여러 Step Def 파일이 있다고 가정합니다. 스토리가 작고 관련된 모든 파일을 단일 step_def 파일에 저장하고 단일 웹 드라이버 오브젝트가있는 경우, 그렇지 않은 경우, 구성 로더에서 전역 적으로 선언 된 사전 정의 된 Driver 오브젝트로 모든 step_def를 호출하십시오.
도움을 주셔서 감사합니다하지만 더 많은 정교한 수있는 하나의 도우미 클래스를 어디에 브라우저를 evoke 메서드를 가지고 정의한 및 step_def 내가 browser.So 그 브라우저를 게이트 수 있도록 해당 브라우저를 정의 할 수있는 해당 메서드를 호출 오전 모든 step_def에서. 그리고 나는 모든 step_def를 하나에 넣을 수 없었다. – user3091180
그럼 훨씬 간단합니다. helper 클래스에 initialize 메서드 (또는 생성자)를 사용하여 드라이버 개체를 인스턴스화합니다. 그런 다음 똑같은 게터를 가져라. 이제 어디서나 게터를 부를 수 있습니다. 유일한 것은, 귀하의 도우미 클래스를 모든 step_def에 공통으로 사용하십시오. 그래도 도움이 필요하면 수업을 더 잘 보여 주어 수정해야 할 부분을 제안 할 수 있습니다. – Karthikeyan
+1 매우 잘 설명 :)! –
모든 테스트 케이스를 실행하기 위해 하나의 브라우저를 사용하려면 싱글 톤 디자인 패턴을 사용하십시오. 즉, private 생성자를 사용하여 클래스를 만들고 private 액세스 지정자로 클래스 인스턴스 변수를 정의하십시오. 해당 클래스에서 메소드를 작성하고 클래스가 널인지 아닌지 확인하십시오. if 그것은 클래스의 새로운 인스턴스를 생성하고 메서드 호출에 해당 인스턴스를 반환하는 것보다 null입니다. 예를 들어, 내 코드를 게시하고 있습니다.
class OpenBrowserHelp {
private WebDriver driver;
private static OpenBrowserHelp browserHelp;
private OpenBrowserHelp() {
this.driver = new FirefoxDriver()
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
driver.manage().window().maximize();
}
public static OpenBrowserHelp getOpenBrowserHelp() {
if (null == browserHelp) {
browserHelp = new OpenBrowserHelp();
}
return browserHelp;
}
WebDriver getDriver() {
return driver
}
void setDriver(WebDriver driver) {
this.driver = driver
}
public void printSingleton() {
System.out.println("Inside print Singleton");
}
지금, 당신은
WebDriver driver = OpenBrowserHelp.getOpenBrowserHelp().getDriver();
- 1. CakePHP에서의 브라우저에서 테스트 케이스를 실행하는 방법
- 2. 오이 테스트 케이스를 작성하는 방법?
- 3. Xcode에서 단일 테스트 케이스를 실행하는 방법은 무엇입니까?
- 4. 오이 시나리오에서 SoapUI 테스트 케이스를 실행하는 방법은 무엇입니까?
- 5. TFS 2015 : 실패한 자동화 된 테스트 케이스를 다시 실행하는 방법
- 6. 로컬 브라우저에서 phpUnit + selenium RC 원격 테스트 케이스를 실행하는 방법
- 7. IE11 브라우저에서 여러 노드에서 셀렌 테스트 케이스를 실행하는 방법
- 8. 자동화 도구에서 테스트 케이스를 작성하는 방법 TestComplete
- 9. 로컬 컴퓨터의 웹 브라우저에서 자동화 된 테스트 케이스를 실행하십시오 - HUDSON
- 10. JUnit 테스트 케이스를 실행하는 동시에
- 11. 여러 장치에서 Robotium 자동화 테스트 사례를 실행하는 방법
- 12. Codility. 자체 테스트 케이스를 실행하는 방법?
- 13. 명령 프롬프트에서 NUnit 테스트 케이스를 실행하는 방법
- 14. 터미널에서 hadoop hdfs 테스트 케이스를 실행하는 방법
- 15. 에스프레소에서 다른 활동 테스트 케이스를 실행하는 방법
- 16. Junit 테스트 케이스를 명령 줄에서 실행하는 방법
- 17. Eclipse에서 Junit의 단일 테스트 케이스를 실행하는 방법은 무엇입니까?
- 18. 원격 테스트 케이스를 로컬에서 실행하는 FitNesse?
- 19. Robot Framework (SELENIUM) Ride 테스트 케이스를 병렬로 실행하는 방법
- 20. 젠킨스에서 셀렌 테스트 케이스를 실행하는 방법은 무엇입니까?
- 21. Junit 3 : 테스트 클래스에서 테스트 케이스를 하나만 실행하는 방법
- 22. Python 코 테스트에서 여러 테스트 케이스를 실행하는 방법
- 23. NetBeans에서 모든 JUnit 테스트 케이스를 실행하는 방법은 무엇입니까?
- 24. 여러 모듈에서 모든 테스트 케이스를 실행하는 방법은 무엇입니까?
- 25. 하나의 자동화 스크립트에서 여러 테스트 케이스를 커버하는 방법
- 26. JUnit 테스트 케이스를 순차적으로 실행하는 방법은 무엇입니까?
- 27. UNIX/LINUX 환경에서 testng 테스트 케이스를 실행하는 방법
- 28. 테스트 케이스를 얻는 방법
- 29. 단일 테스트 케이스를 실행하려면 다중 스레딩 환경이 필요합니다. 즉 여러 스레드에서 단일 테스트 케이스를 실행해야합니다.
- 30. JUNIT 테스트 케이스를 실행하는 중 오류가 발생했습니다.
몇 가지 코드를 제공 사용하는 것보다 브라우저 인스턴스를 만들 필요가 어느 곳. – Abs