자동화테스트/Selenium2018. 12. 30. 08:00


셀레늄 자동화, 요소는 일반 탐지기에 의해 발견되지 않는 경우 등 아이디, 클래스, 이름, 같은 . 다음 XPath는 특정 요소에 대한 작업을 수행 할 수있는 웹 페이지 요소를 찾기 위해 필요합니다. 그러나 플래시 테스트에서 XPath는 플래시 객체에 액세스하지 못합니다. 따라서 Flashwebdriver 객체는 모든 응용 프로그램에서 플래시 객체를 찾는 데 필요합니다.

Selenium을 이용한 플래시 테스팅

여기서는 플래시 테스팅 을 실행 하는 방법과 Selenium으로 플래시 테스팅을 수행하는 방법을 볼 수 있습니다.

이 튜토리얼에서는,

플래시 테스팅이란 무엇입니까?

플래시 테스팅은 플래시 기반 비디오, 게임, 영화 등을 확인하는 데 사용되는 테스트 유형으로 예상대로 작동합니다. 즉, 플래시의 기능을 테스트하는 것을 플래시 테스팅이라고합니다. Flash는 Mircomedia (현재 Adobe에서 구입)에서 개발 한 매우 인기있는 소프트웨어입니다. 게임, 응용 프로그램, 그래픽 기반 애니메이션, 영화, 모바일 게임, 프로그램 등 을 개발하는 데 사용됩니다 .

사전 요구 사항 - 다음은 플래시 응용 프로그램을 테스트하기위한 요구 사항입니다.

  1. 플래시 응용 프로그램.
  2. 지원 웹 브라우저.
  3. 어도비 플래시 플레이어 플러그인.

도구 - 아래는 플래시 테스트에 유용한 테스트 도구입니다.

  1. 셀렌
  2. 비누 UI
  3. TestComplete
  4. 시험 스튜디오 등

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을 이용한 플래시 테스팅

Selenium IDE 레코딩을 사용하여 Flash를 자동화하는 방법

Selenium IDE를 사용하여 플래시를 자동화 할 수도 있습니다.

1 단계) 아래 그림과 같이 플래시 응용 프로그램을 연 다음 Selenium IDE를 열어야합니다.

Selenium을 이용한 플래시 테스팅

2 단계) 오른쪽에있는 "기록 빨간색 버튼"을 클릭하고 Flash 무비에서 작업을 시작하면 아래와 같이 기록 된 스크립트를 찾을 수 있습니다 :

Selenium을 이용한 플래시 테스팅

녹음 후, 사용자가 스크립트를 실행하고 싶다면 아래 화면과 같이 "녹색 실행 버튼"을 클릭하면됩니다. Selenium IDE는 단계별로 스크립트를 실행합니다.

Selenium을 이용한 플래시 테스팅

Selenium Webdriver를 사용하여 Flash를 자동화하는 방법.

Flashwebdriver 객체를 통해 Selenium 웹 드라이버를 사용하여 플래시를 자동화 한 다음 Flash 객체를 조작하는 메소드를 호출 할 수도 있습니다. flashwebdriver jar 파일 을 다운로드 해야 합니다 .

Step 1) 다운로드가 완료되면 아래 그림과 같이 프로젝트에 jar 파일을 추가합니다.

Selenium을 이용한 플래시 테스팅

2 단계) 플래시 jar 파일에는 별도의 flashobjectwebdriver 클래스가 있습니다. 아래 화면과 같이 flashWebdriver "myFlashmovie"를 셀렌 스크립트에 구현하십시오.

Selenium을 이용한 플래시 테스팅

웹 드라이버 클래스 "MyFlashMovie"를 추가하면 Flash 객체에 액세스 할 수 있습니다.

플래시 테스트를 자동화해야하는 경우

일반적으로 플래시 객체를 쉽게 액세스 할 수없는 경우 플래시 테스팅을 자동화해야합니다. 테스트 결과가 중단되어 Flash 객체를 테스트하지 못합니다.

플래시 테스팅을위한 셀렌 스크립트 생성.

1 단계) "Guru99"플래시 무비를 사용하여 플래시 시나리오를 테스트합니다.

http://demo.guru99.com/test/flash-testing.html

Selenium을 이용한 플래시 테스팅

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 파일에 포함되어 있다는 점입니다.
  • 플래시 객체에 쉽게 액세스 할 수없는 경우 일반적으로 플래시 테스팅을 자동화해야합니다.
  • 플래시 테스트에 유용한 도구는 다음과 같습니다.
  1. 셀렌
  2. 비누 UI
  3. TestComplete
  4. 시험 스튜디오 등
  • 플래시 앱을 자동화하는 것은 어려운 일입니다. 플래시 응용 프로그램을 자동화하려면 Selenium IDE의 애드온 인 FlexMonkium을 사용할 수 있습니다.


"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
Posted by 프리스케이터