【问题标题】:phpunit-selenium with firebug带有萤火虫的 phpunit-selenium
【发布时间】:2013-05-30 08:03:51
【问题描述】:

我一直在寻找一种使用 firefox+firebug 插件运行 phpunit-selenium 的方法。 我找到了使用 Java 和 C# 但没有使用 PHPUnit 的 Selenium 示例。 有人可以举个例子吗?

现在我从命令行启动我的测试/浏览器,如下所示: java -jar "selenium.jar" -Dwebdriver.firefox.bin = "我在 osx 上的自定义 firefox 应用文件夹"

我注意到您还可以使用 -Dwebdriver.firefox.profile 来使用自定义配置文件。但我没有找到像 -Dwebdriver.firefox.addon = firebug.xpi 之类的例子

亲切的问候,

西部世界

【问题讨论】:

  • 只是出于好奇:您在自动浏览器测试中使用 Firebug 的目的是什么?你用它做什么?
  • 我希望从控制台捕获任何 javascript 错误 + 测试是否可以导出网络信息

标签: selenium phpunit


【解决方案1】:

Selenium Webdriver 协议允许上传用于测试会话的 Firefox 配置文件。您需要将压缩和 base64 编码的配置文件数据文件夹发送到 Selenium。 Here's some information on how to achieve this using the Facebook php-webdriver. 如何实现这一点取决于您使用 Selenium 启动浏览器会话的方式。

根据 Facebook php-webdriver 的文档,您可以在设置浏览器会话时将 base64 编码的 zip 文件作为名为 firefox_profile 的附加密钥传递给 Selenium。

PHPUnit-Selenium also has a way 设置自定义所需功能。我从未使用过它,但它大致如下所示:

public function setUp()
{
    parent::setUp();
    $this->setDesiredCapabilities(array(
        'firefox_profile' => $profileZipBase64
    ));
} 

为了准备配置文件,您将使用干净的配置文件手动启动 Firefox,然后安装 Firebug 插件。 Here's an answer 提供了有关如何准备配置文件数据的更多详细信息(此处仅由 $profileZipBase64 表示)。

【讨论】:

  • 该链接用于 facebook Selenium 实现。我正在使用github.com/sebastianbergmann/phpunit-selenium
  • 它们都基于 Selenium 的 JSON Wire 协议。我已经添加了一些关于如何使用 PHPUnit 驱动程序实现相同结果的推测。剩下的你自己解决,抱歉。
猜你喜欢
  • 1970-01-01
  • 2011-05-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-24
  • 1970-01-01
相关资源
最近更新 更多