0

我绝对是 Selenium 的菜鸟,但我试图弄清楚如何通过 php-webdriver 使用 BrowserStack Automate 使用其令人印象深刻的浏览器和设备阵列对网页进行自动化测试。

我想做的是:

  1. 动态加载 JQuery
  2. 当 JQuery 准备好时执行一些依赖 JQuery 的 JavaScript

这是我的代码:

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

如何重新配置​​它才能工作。谢谢。

4

0 回答 0