셀레늄 자동화, 요소는 일반 탐지기에 의해 발견되지 않는 경우 등 아이디, 클래스, 이름, 같은 . 다음 XPath는 특정 요소에 대한 작업을 수행 할 수있는 웹 페이지 요소를 찾기 위해 필요합니다. 그러나 플래시 테스트에서 XPath는 플래시 객체에 액세스하지 못합니다. 따라서 Flashwebdriver 객체는 모든 응용 프로그램에서 플래시 객체를 찾는 데 필요합니다.
여기서는 플래시 테스팅 을 실행 하는 방법과 Selenium으로 플래시 테스팅을 수행하는 방법을 볼 수 있습니다.
이 튜토리얼에서는,
플래시 테스팅이란 무엇입니까?
플래시 테스팅은 플래시 기반 비디오, 게임, 영화 등을 확인하는 데 사용되는 테스트 유형으로 예상대로 작동합니다. 즉, 플래시의 기능을 테스트하는 것을 플래시 테스팅이라고합니다. Flash는 Mircomedia (현재 Adobe에서 구입)에서 개발 한 매우 인기있는 소프트웨어입니다. 게임, 응용 프로그램, 그래픽 기반 애니메이션, 영화, 모바일 게임, 프로그램 등 을 개발하는 데 사용됩니다 .
사전 요구 사항 - 다음은 플래시 응용 프로그램을 테스트하기위한 요구 사항입니다.
- 플래시 응용 프로그램.
- 지원 웹 브라우저.
- 어도비 플래시 플레이어 플러그인.
도구 - 아래는 플래시 테스트에 유용한 테스트 도구입니다.
- 셀렌
- 비누 UI
- TestComplete
- 시험 스튜디오 등
Selenium은 웹 테스트를위한 매우 인기있는 도구입니다. 다른 플랫폼과 다른 언어로 프레임 워크를 만들 수 있습니다. 오픈 소스 도구이며 공식 웹 사이트에서 다운로드 할 수 있습니다. 구성, 사용 및 구현하기는 쉽습니다.
Flash 테스트가 다른 요소와 다른 점
- 왜 플래시 객체 캡쳐가 어렵습니까? 어떻게 해결 되었습니까?
플래시는 시대에 뒤진 기술입니다. HTML과 달리 플래시 객체를 캡처하는 것은 어렵습니다. 또한 Flash는 포함 된 SWF 파일 (Small Web Format)입니다. 모바일 장치에서 Flash 개체에 액세스하는 것도 어렵습니다.
플래시를 개발하는 것은 플래시가 검색 엔진에서 완전히 읽을 수 없기 때문에 SEO (검색 엔진 최적화) 관점에서 HTML 페이지를 개발하는 것보다 어렵습니다. 그러나 성능 및 보안과 같은 문제를 극복하기 위해 HTML 5와 같은 고급 기술이 도입되었습니다.
- 플래시 응용 프로그램을 테스트하는 방법은 무엇입니까?
Flash 응용 프로그램은 다음 두 가지 방법으로 테스트됩니다.
- 수동 - 테스트 사례를 수동으로 실행하여 Flash 객체를 간단하고 쉽게 테스트 할 수 있으므로 Flash 객체를 테스트 할 수 있습니다. 버그 수정 후 플래시가 예상대로 제대로 작동하는지 확인하고 로그 오프하십시오.
- 자동화 - Selenium, SoapUI, TestComplete 등과 같은 자동화 도구를 사용하여 스크립트를 작성하고 스크립트를 실행하는 데 사용합니다.
- 플래시와 다른 요소의 차이점.
위에서 언급했듯이 플래시와 다른 요소의 주요 차이점은 Flash가 SWF 파일에 포함되어 있고 다른 요소는 HTML 파일에 포함되어 있다는 점입니다. 그래서 플래시에 비해 HTML을 쉽게 캡처 할 수 있습니다.
Flash Movie / Flash 앱의 Youget 플래시 객체 ID는 어떻게 할 수 있습니까?
모든 웹 페이지에서 <object> 태그는 Flash, ActiveX, Video 등의 모든 내장 멀티미디어에 사용됩니다. 그것은 HTML 문서 내에 "embed"를 의미합니다. 이 태그는 대화 형 내용이나 외부 응용 프로그램을 위해 HTML의 <object /> 또는 <embed /> 태그에 포함 된 컨테이너를 정의합니다. 개체 이름은 웹 페이지에서 플래시 개체를 찾는 데 사용됩니다.
예를 들어, 아래 예에서 플래시 동영상이 HTML 문서 또는 파일의 'embed'태그에 정의되어 있음을 볼 수 있습니다.
예:
/ * Html 페이지 * / <html> <body marginwidth = "0"marginheight = "0"> <embed width = "100 %"height = "100 %"name = "plugin"src = "http : //video/movie_play.swf"type = "application / flash"/> </ body> </ html>
개체 ID를 사용하여 플래시 요소를 찾습니다.
객체 ID와 같은 플래시 속성을 사용하여 플래시 객체를 찾을 수 있습니다. 따라서 재생, 정지 등의 필요에 따라 작업을 수행 할 수 있습니다.
앞서 설명한 것처럼 XPath를 사용하여 Flash 객체에 액세스 할 수 없습니다. 따라서 이러한 객체에 대한 작업을 수행하려면 개발자는 적절한 객체 ID를 할당해야합니다.
아래 화면은 Flash에 "MyFlashMovie"라는 객체 ID가 할당 된 것을 보여줍니다.
Selenium IDE 레코딩을 사용하여 Flash를 자동화하는 방법
Selenium IDE를 사용하여 플래시를 자동화 할 수도 있습니다.
1 단계) 아래 그림과 같이 플래시 응용 프로그램을 연 다음 Selenium IDE를 열어야합니다.
2 단계) 오른쪽에있는 "기록 빨간색 버튼"을 클릭하고 Flash 무비에서 작업을 시작하면 아래와 같이 기록 된 스크립트를 찾을 수 있습니다 :
녹음 후, 사용자가 스크립트를 실행하고 싶다면 아래 화면과 같이 "녹색 실행 버튼"을 클릭하면됩니다. Selenium IDE는 단계별로 스크립트를 실행합니다.
Selenium Webdriver를 사용하여 Flash를 자동화하는 방법.
Flashwebdriver 객체를 통해 Selenium 웹 드라이버를 사용하여 플래시를 자동화 한 다음 Flash 객체를 조작하는 메소드를 호출 할 수도 있습니다. flashwebdriver jar 파일 을 다운로드 해야 합니다 .
Step 1) 다운로드가 완료되면 아래 그림과 같이 프로젝트에 jar 파일을 추가합니다.
2 단계) 플래시 jar 파일에는 별도의 flashobjectwebdriver 클래스가 있습니다. 아래 화면과 같이 flashWebdriver "myFlashmovie"를 셀렌 스크립트에 구현하십시오.
웹 드라이버 클래스 "MyFlashMovie"를 추가하면 Flash 객체에 액세스 할 수 있습니다.
플래시 테스트를 자동화해야하는 경우
일반적으로 플래시 객체를 쉽게 액세스 할 수없는 경우 플래시 테스팅을 자동화해야합니다. 테스트 결과가 중단되어 Flash 객체를 테스트하지 못합니다.
플래시 테스팅을위한 셀렌 스크립트 생성.
1 단계) "Guru99"플래시 무비를 사용하여 플래시 시나리오를 테스트합니다.
http://demo.guru99.com/test/flash-testing.html
2) Selenium eclipse에 스크립트를 작성하고 실행하십시오. 아래 코드는 실행될 때 다음 작업을 수행합니다.
- Firefox 브라우저를 열고,
- guru99 플래시 사이트를 시작하십시오.
- 플래시 무비를 재생하고
- 그런 다음 영화를 중단하십시오.
import org.openqa.selenium.firefox.FirefoxDriver;
import Flash.FlashObjectWebDriver;
public class Flash {
public static void main(String[] args) throws InterruptedException {
// Open firefox browser
FirefoxDriver driver = new FirefoxDriver();
// Maximize browser
driver.manage().window().maximize();
// Under Flash jar file there is separate FlashObjectWebDriver class
FlashObjectWebDriver flashApp = new FlashObjectWebDriver(driver, "myFlashMovie");
// Pass the URL of video
driver.get("http://demo.guru99.com/test/flash-testing.html");
Thread.sleep(5000);
flashApp.callFlashObject("Play");
Thread.sleep(5000);
flashApp.callFlashObject("StopPlay");
Thread.sleep(5000);
flashApp.callFlashObject("SetVariable","/:message","Flash testing using selenium Webdriver");
System.out.println(flashApp.callFlashObject("GetVariable","/:message"));
}
}
3 단계) : 위의 스크립트를 실행합니다.
출력 : 위 스크립트 실행시 플래시 동영상이 재생되고 정지됩니다.
플래시 테스트의 과제
- 플래시 앱을 자동화하는 것은 어려운 일입니다. 플래시 응용 프로그램을 자동화하려면 Selenium IDE의 애드온 인 FlexMonkium을 사용할 수 있습니다.
- Selenium-Flexmonkium 통합을 사용하여 기록 / 재생 Flex 앱을 사용하려면 문제가 발생할 수 있습니다. 해결책은 사용자가 Flex Monkium을 설치하고 셀렌 IDE에 조심스럽게 통합해야한다는 것입니다. 적절한 설치로 인해 플래시 응용 프로그램을 자동화 할 수 있습니다.
개요:
- 플래시 테스팅에서는 플래시 비디오, 게임, 영화 등이 예상대로 작동하는지 확인해야합니다.
- 객체 ID와 같은 플래시 속성을 사용하여 플래시 객체를 찾습니다. 따라서 재생, 정지 등의 필요에 따라 작업을 수행 할 수 있습니다.
- Flash와 다른 요소의 주요 차이점은 Flash가 SWF 파일에 포함되어 있고 다른 요소는 HTML 파일에 포함되어 있다는 점입니다.
- 플래시 객체에 쉽게 액세스 할 수없는 경우 일반적으로 플래시 테스팅을 자동화해야합니다.
- 플래시 테스트에 유용한 도구는 다음과 같습니다.
- 셀렌
- 비누 UI
- TestComplete
- 시험 스튜디오 등
- 플래시 앱을 자동화하는 것은 어려운 일입니다. 플래시 응용 프로그램을 자동화하려면 Selenium IDE의 애드온 인 FlexMonkium을 사용할 수 있습니다.
'자동화테스트 > Selenium' 카테고리의 다른 글
Selenium Core Extensions (사용자 확장 프로그램 js) (0) | 2019.01.01 |
---|---|
Selenium Webdriver를 사용하여 모든 / 깨진 링크를 찾는 방법 (0) | 2018.12.31 |
Selenium WebDriver를 사용하여 툴팁 확인 (0) | 2018.12.29 |
TestNG 그룹 소개 (0) | 2018.12.28 |
TestNG : 다중 테스트 스위트 실행 (0) | 2018.12.27 |