2009-06-18 3 views
0

네트워크 기능이 독립 실행 형 플레이어에 내장되어 있으므로 웹 브라우저가 필요하지 않습니다. 방금로드 테스트 목적으로 특정 SWF 파일을 재생하는 수백 개의 Flash Player (UI 없음)를 프로그래밍 방식으로 시작할 수있는 .NET 구성 요소가 필요합니다. SWF 파일은 네트워크 서비스에 액세스하고 다른 SWF 파일을 다운로드하지만 기본적으로 플레이어에로드 된 후에는 자체적으로 완료까지 실행됩니다.플래시 기반 웹 응용 프로그램을로드 테스트하기 위해 웹 브라우저 또는 플래시 플러그인을 어떻게 시뮬레이트 할 수 있습니까?

그러한 구성 요소가 더 이상 일정 기간 네트워크에 액세스하지 않거나 SWF가 작업을 완료했다는 메시지를 수신하는 것을 감지 할 수 있다면 좋을 것입니다. 그 플래시 플레이어의 인스턴스와 새 인스턴스를 시작합니다.

아마도 기존의 Flash Player를 사용할 수는 있지만 UI가있는 플레이어를 실제로 시작하고 싶지는 않습니다. 기본적으로 UI가없는 플레이어를 프로그래밍해야합니다. 왜냐하면 내가 수백 개의 그것들을 하나의 머신에서 사용하기 때문에 실제로 모든 그래픽을 렌더링하는 오버 헤드가 필요하지 않습니다. 분산 응용 프로그램으로 여러 대의 컴퓨터에서 실행하고있을 것입니다.

의견이 있으십니까?

답변

0

(모두 Flash 10이 설치된) 실제 브라우저가 필요하면 내 회사 인 BrowserMob을 확인하십시오. 효과적으로 "Selenium load testing"을 수행합니다. 많은 고객이 당사의 서비스를 사용하여 플래시 자동화를 수행하며 기존 프로토콜 수준의로드 테스트보다 훨씬 쉽습니다.

+0

우리는 어제 전화 통화를했다 (James와 Jonathan을 기억 하는가?). Flash ActionScript 또는 AJAX와 관련된 복잡한 클라이언트 활동이있는 웹 응용 프로그램의 경우 실제 브라우저 + 클라우드 컴퓨팅 = 정확하고 쉬운로드 테스트. BrowserMob은 우리가 필요로하는 것입니다. 당신이 그것을 만들었 기 때문에 기쁩니다. – Triynko

+0

원래 쿼드 코어 데스크탑에서 .NET 명령 Process.Start (@ "C : \ Program Files (x86) \ Mozilla Firefox \ firefox.exe", "내 테스트 URL")를 사용하여 백개의 탭을 시작했습니다. . 이러한 테스트는 서로 몇 초 만에 완료되었으며 자동화 된 플래시 클라이언트가 타이밍 결과를 서버에 기록했지만 8GB RAM이 있더라도이 머신에서 5000 개의 탭을 열어보기를 꺼립니다. BrowserMob을 사용하면 더 많은 프로세싱 코어를 사용하여 비슷한 작업을 수행 할 수 있지만 오류가 발생할 경우 많은 통계와 브라우저 스크린 샷이 제공됩니다. – Triynko

2

모든 서버가 요청하는 순서는 시뮬레이션하려는 것입니다.

SWF에서 콘텐츠 요청에 HTTP를 사용하는 경우 JMeter 또는 포위 공격이 도움이되는 무료 도구입니다. 그렇지 않으면 상업용 부하 테스트 도구가 많이 있습니다. 우리 회사에서 사용하는 비용은 "많이"라고 말할 수 있지만 QA로 전달하기 전에 테스트를 할 때 JMeter 또는 포위 공격을 사용하는 경향이 있습니다.

스트리밍 미디어를 테스트하는 경우 약간 복잡해 지므로 시스템을 개별 구성 요소로 확인해야 할 수 있습니다.

부하 테스트를 시도하는 모든 사람에게 Allspaw 책을 제안합니다.

http://my.safaribooksonline.com/9780596518578

+0

아니요, 사실 서버는 요청 순서보다 많은 것을 신경 쓰고 있습니다. 서버는 플래시 플레이어와의 복잡한 통신 프로토콜에 관련되어 있기 때문에 각 요청의 내용과 타이밍에 신경을 씁니다. 즉, HTTP 요청의 정적 스크립트로 시뮬레이션 할 수 없습니다 (간단합니다). Flash 무비의 액션 스크립트 기반 애플리케이션과의 동적 통신이 필요하기 때문에 실제로 네트워크 액세스가있는 플래시 플레이어를 UI에서 빼고 시뮬레이션해야합니다. – Triynko

+0

사용자가 브라우저를 열고, 플래시 무비로 이동 한 다음, 플래시 플러그인이 무비를 5 분간 실행하게하여 브라우저가 닫히기 전에 모든 통신을 완료 할 시간을 갖도록 시뮬레이션해야합니다. 필자가 플러그인이나 독립 실행 형 플레이어를 시뮬레이션 할 수 있다면 더 좋을 것입니다. 플래시 동영상은 미디어를 스트리밍하고 로딩 시간을 기록하며 완료되면 모든 작업을보고합니다. – Triynko

+0

나는 당신이 오해했다고 생각합니다. JMeter와 같은 도구를 사용하면 사용자의 타이밍과 흐름을 테스트 계획에 통합 할 수 있습니다. – caskey

0

당신은 아무것도 플래시 무비를 실행 제외 작동하지 않습니다 확신 경우, Thummer 같은 브라우저 기반의 스크린 샷을 생성하는 스크립트 중 하나를 잡아. 이것들은 Firefox 나 Safari에서 페이지를로드하고 미친 것처럼 루프를 돌리거나 플래시 무비를 실행하도록 허용 할 수 있습니다.

firefox 용 셀레늄과 같은 UI 테스트 도구를 사용하면 원하는대로 스크립트를 작성하고 자동 시퀀스를 실행할 수 있습니다.

나는 또한 Ditto에 동의합니다 - JMeter는 요청을 시뮬레이션 할뿐만 아니라 완료되었을 때 유용한 메트릭을 제공합니다. 여러 브라우저에서 직접 해보는 경우 병목 현상이 어디에 있는지 어떻게 알 수 있습니까?