Flash Testing with Selenium веб-драйвер
⚡ Розумний підсумок
Flash Testing with Selenium WebDriver перевіряє правильність роботи відео, ігор та анімації на основі Flash. У цьому ресурсі пояснюється захоплення вбудованих SWF-об'єктів, призначення ідентифікаторів об'єктів та автоматизація відтворення за допомогою Selenium Запис IDE та клас FlashObjectWebDriver для надійної перевірки.

Що таке Flash Testing?
Тестування флеш-пам'яті – це тип тестування, який використовується для перевірки того, чи відео, ігри, фільми тощо на основі флеш-пам'яті працюють належним чином. Іншими словами, тестування функціональності флеш-пам'яті називається Flash тестування. Flash — це популярне програмне забезпечення, розроблене Macromedia (тепер придбане Adobe). Воно використовується для розробки ігор, програм, графічної анімації, фільмів, Mobile ігри, програми тощо.
In Selenium Автоматизація, якщо елементи не знайдені загальними локаторами наприклад ідентифікатор, клас, ім’я тощо, То XPath потрібно знайти елемент на веб-сторінці, щоб виконати операцію з цим конкретним елементом. Але у Flash-тестуванні, XPath не вдається отримати доступ до флеш-об'єкта. Тому для пошуку флеш-об'єкта в будь-якій програмі потрібен об'єкт Flashwebdriver.
Тут ви побачите, як виконати flash Тестування і як проводити тестування флеш-пам’яті за допомогою Selenium.
Передумова для тестування Flash
Перш ніж почати, виконайте наступні вимоги для тестування флеш-застосунку:
- Програма Flash.
- Підтримуваний веббраузер.
- Плагіни Adobe Flash Player.
інструменти- Нижче наведено інструменти тестування, корисні для тестування флеш-пам’яті.
- Selenium
- Мильний інтерфейс користувача
- TestComplete
- Тестова студія тощо.
Selenium – дуже популярний інструмент для веб-тестування. Ви можете створювати фреймворки на різних платформах та різними мовами програмування. Це інструмент з відкритим кодом, який можна завантажити з офіційного веб-сайту. Його легко налаштувати, використовувати та впровадити.
Чим флеш-тестування відрізняється від інших елементів
Тепер, коли передумови готові, корисно зрозуміти, чому Flash поводиться інакше, ніж стандартні елементи HTML під час тестування.
- Чому складно захопити об'єкти зі спалахом? Як це вирішується?
Flash — це застаріла технологія. Захопити Flash-об'єкт складно, оскільки він відрізняється від HTML. Крім того, Flash — це вбудований SWF-файл (малий веб-формат). Також складно отримати доступ до Flash-об'єкта на мобільному пристрої.
Розвитокping спалах складніший, ніж розробкаping HTML-сторінку з точки зору SEO (пошукової оптимізації), оскільки Flash не повністю читається пошуковою системою. Однак, для подолання таких проблем, як продуктивність та безпека, впроваджуються передові технології, такі як HTML 5.
- Якими способами тестується флеш-додаток?
Програми Flash тестуються двома способами:
- Вручну - Ви можете протестувати об’єкт Flash, виконавши тестові випадки вручну, оскільки це просто та легко перевірити. Після виправлення помилок ви переконаєтесь, що флеш-пам’ять працює належним чином, і надасте підпис.
- Автоматизація - Ви пишете скрипт, використовуючи будь-який інструмент автоматизації, наприклад Selenium, SoapUI, TestCompleteтощо та виконайте скрипт.
- Різниця між Flash та іншими елементами.
Як згадувалося вище, основна відмінність між Flash та іншими елементами полягає в тому, що Flash вбудований у SWF-файли, тоді як інші елементи вбудовані у HTML-файли. Саме тому HTML легше захопити порівняно з Flash.
Як отримати ідентифікатор флеш-об'єкта флеш-фільму / флеш-додатку
Щойно ви зрозумієте, чим Flash відрізняється від HTML, наступним кроком буде пошук самого об'єкта Flash за його ідентифікатором об'єкта.
На будь-якій веб-сторінці тег <object> використовується для будь-якого вбудованого мультимедіа (наприклад, Flash, ActiveX, відео тощо). Він означає «вбудовування» в HTML-документ. Цей тег визначає контейнер, вбудований в теги <object /> або <embed /> в HTML-документі для інтерактивного контенту або зовнішньої програми. Ім'я об'єкта використовується для визначення місцезнаходження об'єкта Flash на веб-сторінках.
Наприклад, у наведеному нижче прикладі ви можете побачити, що флеш-ролик визначено в тезі «embed» у HTML-документі або файлі.
приклад:
/* 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>
Використання ідентифікатора об'єкта для пошуку елементів Flash.
Ви можете використовувати такі атрибути flash, як ідентифікатор об’єкта, щоб знайти об’єкт flash. І таким чином ви можете виконувати над ним необхідні операції, такі як відтворення, зупинка тощо.
Як уже обговорювалося, до об'єктів Flash не можна отримати доступ за допомогою XPath. Тому, щоб виконати будь-яку дію з цими об'єктами, розробнику потрібно призначити відповідний ідентифікатор об'єкта.
На екрані нижче показано, що для Flash призначено ідентифікатор об'єкта «MyFlashMovie»:
Як автоматизувати використання Flash Selenium Запис IDE
Після призначення ідентифікатора об'єкта ви можете записувати взаємодії з Flash-фільмом безпосередньо через Selenium ІДЕ.
Ви також можете автоматизувати спалах за допомогою Selenium ІДЕ.
Крок 1) Вам потрібно відкрити флеш-додаток, а потім Selenium IDE, як показано на екрані нижче:
Крок 2) Тепер натисніть на «червону кнопку запису» праворуч і почніть виконувати операції з флеш-фільмом, після чого ви знайдете записаний сценарій, як показано нижче:
Після запису, якщо користувач хоче виконати скрипт, він може натиснути на «зелену кнопку запуску», як показано на екрані нижче. Selenium IDE виконає сценарій крок за кроком.
Як автоматизувати використання Flash Selenium Веб-драйвер
Для більшого контролю, ніж просто запис пропозицій, Selenium WebDriver дозволяє керувати Flash-об'єктом програмно.
Ви також можете автоматизувати спалах за допомогою Selenium веб-драйвер через об'єкт Flashwebdriver, а потім викликати метод для роботи з флеш-об'єктом. Вам потрібно завантажити jar-файли flashwebdriver:
Крок 1) Після завантаження додайте jar-файл до свого проєкту, як показано на екрані нижче.
Крок 2) У jar-файлі флеш-пам'яті є окремий клас flashobjectwebdriver. Реалізуйте flashWebdriver "myFlashmovie" у вашому скрипті Selenium, як показано на екрані нижче.
Після додавання класу веб-драйвера «MyFlashMovie» ви можете отримати доступ до об’єкта Flash.
Коли автоматизувати флеш-тестування
Зазвичай, вам потрібно автоматизувати тестування Flash, коли об'єкт Flash нелегкодоступний. Це призводить до переривання тесту та, як наслідок, до неможливості протестувати об'єкт Flash.
Створення скрипта Selenium для тестування Flash
Об'єднавши попередні кроки, ось повний робочий скрипт, який запускає та керує Guru99 демонстраційний флеш-ролик.
Крок 1) Ви використовуєте «Guru99-дюймовий флеш-відео для тестування сценарію зі спалахом.
https://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 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) Виконайте вищезазначений скрипт.
вихід: Після виконання вищезазначеного скрипта флеш-ролик починає відтворюватися та зупинятися тощо.
Проблеми під час тестування Flash
- Автоматизація флеш-додатку – це складне завдання. Щоб автоматизувати флеш-додаток, можна використовувати FlexMonkium, який є доповненням для Selenium ІДЕ.
- Ви можете зіткнутися з проблемами, пов’язаними з увімкненням запису/відтворення Flex-додатків за допомогою Selenium-Інтеграція з Flexmonkium. Рішення полягає в тому, що користувачеві потрібно встановити та інтегрувати Flexmonkium з Selenium Уважно встановіть IDE. Правильна інсталяція дозволить записувати файли для автоматизації флеш-додатків.








