PHPWebDriver — динамически загружайте JQuery и затем выполняйте JavaScript, когда он будет готов

Я определенно являюсь новичком в Selenium, но я пытаюсь понять, как использовать BrowserStack Automate через php-webdriver для автоматического тестирования веб-страниц с использованием их впечатляющего множества браузеров и устройств.

То, что я пытаюсь сделать, это:

  1. Загружать JQuery динамически
  2. Выполните некоторый JQuery-зависимый JavaScript, когда JQuery будет готов

Вот код, который у меня есть:

require "path/to/php-webdriver-master/lib/__init__.php";

$web_driver = RemoteWebDriver::create(
"http://myusername:mykey@hub.browserstack.com/wd/hub",
array("browser" => "Firefox", "browser_version" => "31.0", "os" => "Windows", "os_version" => "7", "resolution" => "1024x768")
);
$web_driver->get("http://google.com/ncr");

$load_jquery_str = 'file_ref_obj = document.createElement("script");file_ref_obj.src = "http://code.jquery.com/jquery-1.11.2.min.js";file_ref_obj.type = "text/javascript";file_ref_obj.async = false;document.getElementsByTagName("head")[0].appendChild(file_ref_obj);';
$exec_jquery_str = '$(function(){var test = $("#mngb").find("gb_f gb_h").attr("data-pid");alert(test);});';

$web_driver->executeScript($load_jquery_str);
sleep(5);
$web_driver->executeScript($exec_jquery_str);

$web_driver->quit();

Это не работает, и я получаю сообщение об ошибке $ is not defined,

Как можно перенастроить это на работу. Благодарю.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector