플래시 테스트 Selenium 웹드라이버
⚡ 스마트 요약
플래시 테스트 Selenium WebDriver는 Flash 기반 비디오, 게임 및 애니메이션이 올바르게 작동하는지 확인합니다. 이 자료에서는 내장된 SWF 객체를 캡처하고, 객체 ID를 할당하고, WebDriver를 사용하여 재생을 자동화하는 방법을 설명합니다. Selenium IDE 녹화 및 FlashObjectWebDriver 클래스를 사용하여 안정적인 유효성 검사를 수행합니다.

플래시 테스트란 무엇입니까?
플래시 테스트는 플래시 기반 비디오, 게임, 영화 등이 예상대로 작동하는지 확인하는 데 사용되는 테스트 유형입니다. 다시 말해, 플래시의 기능을 테스트하는 것을 플래시 테스트라고 합니다. 플래시 테스트. Flash는 Macromedia(현재 Adobe에 인수됨)에서 개발한 인기 있는 소프트웨어입니다. 게임, 애플리케이션, 그래픽 기반 애니메이션, 영화 등을 개발하는 데 사용됩니다. 모바일 게임, 프로그램 등
In Selenium 자동화(일반 로케이터로 요소를 찾을 수 없는 경우) ID, 클래스, 이름 등과 같은다음, xpath 웹 페이지에서 특정 요소를 찾아 그 요소에 대한 작업을 수행하려면 해당 요소를 찾아야 합니다. 하지만 플래시 테스트에서는 그렇지 않습니다. xpath 플래시 객체에 접근하는 데 실패했습니다. 따라서 어떤 애플리케이션에서든 플래시 객체를 찾으려면 Flashwebdriver 객체가 필요합니다.
플래시를 실행하는 방법을 살펴보겠습니다. 지원 플래시 테스트를 수행하는 방법 Selenium.
플래시 테스트를 위한 전제조건
시작하기 전에 플래시 애플리케이션 테스트를 위해 필요한 사항은 다음과 같습니다.
- 플래시 응용 프로그램.
- 지원되는 웹 브라우저.
- Adobe Flash 플레이어 플러그인.
도구- 다음은 플래시 테스트에 유용한 테스트 도구입니다.
- Selenium
- 비누 UI
- TestComplete
- 테스트 스튜디오 등
Selenium 웹 테스트에 매우 인기 있는 도구입니다. 다양한 플랫폼과 언어로 프레임워크를 구축할 수 있습니다. 오픈 소스 도구이며 공식 웹사이트에서 다운로드할 수 있습니다. 설정, 사용 및 구현이 간편합니다.
플래시 테스트가 다른 요소와 어떻게 다른가
이제 필요한 준비가 완료되었으므로, 테스트 중에 플래시가 표준 HTML 요소와 다르게 동작하는 이유를 이해하는 것이 도움이 됩니다.
- 플래시를 사용해도 물체를 촬영하기 어려운 이유는 무엇일까요? 어떻게 해결할 수 있을까요?
플래시는 구식 기술입니다. 플래시 객체는 HTML과 다르기 때문에 캡처하기 어렵습니다. 또한 플래시는 SWF(Small Web Format) 파일 형태로 제공됩니다. 모바일 기기에서 플래시 객체에 접근하는 것도 어렵습니다.
개발ping 플래시 촬영은 현상보다 어렵습니다.ping SEO(검색 엔진 최적화) 관점에서 HTML 페이지는 플래시를 검색 엔진이 완전히 읽을 수 없기 때문에 적합하지 않습니다. 하지만 HTML 5와 같은 고급 기술은 성능 및 보안과 같은 문제를 해결하기 위해 도입되었습니다.
- 플래시 애플리케이션은 어떤 방식으로 테스트됩니까?
Flash 응용 프로그램은 두 가지 방법으로 테스트됩니다.
- 핸드북- 테스트가 간단하고 쉽기 때문에 수동으로 테스트 사례를 실행하여 Flash 개체를 테스트할 수 있습니다. 버그 수정 후 플래시가 예상대로 제대로 작동하는지 확인하고 승인을 제공합니다.
- 자동화 – 자동화 도구를 사용하여 스크립트를 작성합니다. Selenium, SoapUI, TestComplete등등을 입력하고 스크립트를 실행합니다.
- 플래시와 다른 요소들의 차이점.
위에서 언급했듯이 플래시와 다른 요소들의 주요 차이점은 플래시는 SWF 파일에 포함되는 반면, 다른 요소들은 HTML 파일에 포함된다는 점입니다. 이것이 바로 플래시에 비해 HTML을 캡처하기가 더 쉬운 이유입니다.
플래시 무비/플래시 앱의 플래시 객체 ID를 어떻게 얻을 수 있나요?
플래시와 HTML의 차이점을 이해했다면, 다음 단계는 객체 ID를 통해 플래시 객체 자체를 찾는 것입니다.
웹 페이지에서 <object> 태그는 플래시, 액티브엑스, 비디오 등과 같은 멀티미디어 콘텐츠를 삽입하는 데 사용됩니다. 이 태그는 HTML 문서 내에 "삽입"한다는 의미를 내포합니다. <object> 태그는 <object /> 또는 <embed /> 태그 내에 삽입되어 대화형 콘텐츠 또는 외부 애플리케이션을 담는 컨테이너를 정의합니다. 객체 이름은 웹 페이지에서 플래시 객체를 찾는 데 사용됩니다.
예를 들어, 아래 예시에서 볼 수 있듯이 플래시 무비는 HTML 문서 또는 파일의 "embed" 태그 안에 정의되어 있습니다.
예:
/* Html page*/ <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와 같은 플래시 속성을 사용하여 플래시 객체를 찾을 수 있습니다. 그리고 필요에 따라 재생, 중지 등과 같은 작업을 수행할 수 있습니다.
앞서 설명했듯이 Flash 객체는 XPath를 사용하여 접근할 수 없습니다. 따라서 이러한 객체에 대한 작업을 수행하려면 개발자가 적절한 객체 ID를 할당해야 합니다.
아래 화면은 플래시에 "MyFlashMovie"라는 객체 ID가 할당되었음을 보여줍니다.
다음을 사용하여 Flash를 자동화하는 방법 Selenium IDE 녹음
객체 ID가 할당되면 플래시 무비에서 직접 상호 작용을 기록할 수 있습니다. Selenium IDE.
다음을 사용하여 플래시를 자동화할 수도 있습니다. Selenium IDE.
단계 1) 플래시 애플리케이션을 열고 나서 Selenium 아래 화면에 표시된 IDE:
단계 2) 이제 오른쪽의 "녹화하기" 빨간색 버튼을 클릭하고 플래시 무비에 대한 작업을 시작하면 아래와 같이 녹화된 스크립트를 확인할 수 있습니다.
녹화가 완료된 후, 사용자가 스크립트를 실행하려면 아래 화면에 표시된 "녹색 실행 버튼"을 클릭하면 됩니다. Selenium IDE는 스크립트를 단계별로 실행합니다.
다음을 사용하여 Flash를 자동화하는 방법 Selenium 웹드라이버
녹음 기능보다 더 많은 제어 권한을 원하시면, Selenium WebDriver를 사용하면 Flash 객체를 프로그래밍 방식으로 제어할 수 있습니다.
다음을 사용하여 플래시를 자동화할 수도 있습니다. Selenium Flashwebdriver 객체를 통해 웹 드라이버에 접근한 다음, 플래시 객체를 조작하는 메서드를 호출해야 합니다. flashwebdriver jar 파일 다운로드:
단계 1) 다운로드 후 아래 화면에 표시된 대로 jar 파일을 프로젝트에 추가하세요.
단계 2) 플래시 JAR 파일 안에 별도의 flashobjectwebdriver 클래스가 있습니다. 아래 스크린샷과 같이 Selenium 스크립트에서 flashWebdriver "myFlashmovie"를 구현하세요.
웹 드라이버 클래스 "MyFlashMovie"를 추가하면 Flash 객체에 접근할 수 있습니다.
플래시 테스트를 자동화해야 하는 경우
일반적으로 플래시 객체에 쉽게 접근할 수 없는 경우 플래시 테스트를 자동화해야 합니다. 그렇지 않으면 테스트가 중단되어 플래시 객체 테스트에 실패하게 됩니다.
플래시 테스트를 위한 셀레늄 스크립트 생성
앞서 설명한 단계들을 종합하면, 다음은 프로그램을 실행하고 제어하는 완전한 스크립트입니다. Guru99개의 데모 플래시 무비.
단계 1) 당신은 “Guru플래시 작동 시나리오를 테스트하기 위한 99초짜리 플래시 동영상입니다.
https://demo.guru99.com/test/flash-testing.html
단계 2) 스크립트 작성 Selenium 이클립스를 열고 실행하세요. 아래 코드를 실행하면 다음과 같은 작업이 수행됩니다.
- 열기 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 a separate FlashObjectWebDriver class FlashObjectWebDriver flashApp = new FlashObjectWebDriver(driver, "myFlashMovie"); // Pass the URL of video driver.get("https://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) 위 스크립트를 실행하세요.
출력: 위 스크립트를 실행하면 플래시 무비가 재생되고 멈추는 등의 동작이 수행됩니다.
플래시 테스트의 과제
- 플래시 앱 자동화는 어려운 작업입니다. 플래시 앱을 자동화하려면 FlexMonkium이라는 애드온을 사용할 수 있습니다. Selenium IDE.
- Flex 앱의 녹화/재생 기능을 활성화하는 데 문제가 발생할 수 있습니다. Selenium- Flexmonkium 통합. 해결책은 사용자가 Flexmonkium을 설치하고 통합하는 것입니다. Selenium IDE를 주의 깊게 설치하십시오. 올바르게 설치하면 플래시 앱 자동화를 위한 녹화 기능이 활성화됩니다.








