当前位置: 首页 > 面试题库 >

如何在Linux上让Selenium与PHP / Firefox3一起使用

谷梁宁
2023-03-14
问题内容

我正在尝试让Selenium RC在具有PHP /
Apache的Linux上与Firefox 3一起工作,但是遇到了问题。这是我所做的:

  • 我已经安装了Firefox Selenium-IDE扩展。
  • 在Web服务器(在我的情况下,它实际上是运行Firefox的同一台计算机)上,我使用以下命令启动了Selenium服务器:java -jar selenium-server.jar -interactive
  • 我有一个PHP脚本,如下所示:

PHP:

require_once 'Testing/Selenium.php';

$browser = new Testing_Selenium("*custom /usr/lib/firefox-3.0.3/firefox", "https://www.example.com");
$browser->start();

当我运行PHP脚本时,它确实会启动一个新的Firefox选项卡,但出现 以下错误消息

The requested URL /selenium-server/core/RemoteRunner.html was not found on this server.

我在Firefox 2上获得了更大的成功(通过在我的当前项目中使用"*firefox"代替,"*custom"但不想使用它)。


问题答案:

我不确定回答您自己的问题的礼节…但是经过反复试验,这就是我设法让Selenium在Ubuntu上使用PHP / Firefox3的方式。

  1. 我下载了RC并将php客户端目录复制为/ Selenium到/ usr / share / php
  2. 我导航到下载中的Selenium Server目录,并使用 java -jar selenium-server.jar
  3. 我创建了一个新的Firefox配置文件(通过运行firefox -ProfileManager)。我将新的配置文件称为“硒”
  4. 在该配置文件中,我编辑Firefox Network首选项以通过localhost端口4444代理所有协议。
  5. 我创建了我的PHP脚本并使用以下命令运行它:

php -d include_path=".:/usr/share/php:/usr/share/php/Selenium/PEAR" test.php

我在下面列出了我的(基本,非PHPUnit,非OO)第一个测试脚本,以供参考。

require_once 'Testing/Selenium.php';

$oSelenium = new Testing_Selenium(
    "*custom /usr/lib/firefox-3.0.3/firefox -P Selenium",
    "https://www.example.com");
$oSelenium->start();

$oSelenium->open("/");

if (!$oSelenium->isElementPresent("id=login_button")) {
        $oSelenium->click("logout");
        $oSelenium->waitForPageToLoad(10000);
        if (!$oSelenium->isElementPresent("id=login_button")) {
                echo "Failed to log out\n\n";
                exit;
        }
}

$oSelenium->type("login", "my_username");
$oSelenium->type("password", "my_password");
$oSelenium->click("login_button");
$oSelenium->waitForPageToLoad(10000);

$oSelenium->click("top_nav_campaigns");

$oSelenium->stop();


 类似资料:
  • 问题内容: 我正在尝试配置的代理设置,因此我使用了以下代码.... 在文件上执行运行后,我得到了类似…的异常 org.openqa.selenium.WebDriverException:在PATH中找不到Firefox二进制文件。 确保安装了Firefox。操作系统似乎是:MAC 系统信息:os.name:“Mac OS X”,os.arch:“ x86_64”,os.version:“ 10.

  • 问题内容: 我在使用Ajax和php时遇到麻烦。我正在尝试做的是调用ajax函数,该函数从表单的输入中获取值,并检查数据库中是否存在该电子邮件。这是我当前的javascript: 不幸的是,我无法戒备。在我的PHP函数中,它检查输入的是用户名还是电子邮件(仅出于我的目的,所以您知道),然后在任一列中查找它。如果找到它,则返回true,否则返回false: 所以我的问题是,ajax如何响应这些返回值

  • 问题内容: 我想运行使用Python脚本与作为我的一个无头的浏览器 树莓派 运行Raspbian。 我最初是在OS X上编写脚本的,可以正常工作。但是,在尝试使其在Raspberry上运行时,我遇到了问题。 尝试运行脚本时,出现以下错误: 脚本的简短版本: 我已经看到其他人有类似我的问题-解决方案不一- 大多数似乎都涉及到自己构建PhantomJS,或者克隆并安装适用于Raspberry的Gith

  • 问题内容: 当我插入和拔出电源时,系统看到有东西插入: AVRISP MKII应该依靠cdc-acm: 因此它应该能够很好地看到它,但是我无法写它。 退货 问题答案: 事实证明,Ubuntu会承认对象存在,但在修复某些udev规则之前,它并不能很好地发挥作用。多亏了http://steve.kargs.net/bacnet/avr- isp-mkii-on-ubuntu-hardy/ ,该文件提供

  • 问题内容: 我收到错误消息“无法加载驱动程序” 问题答案: 尝试这个: 通过删除“;”在php.ini中取消注释以下内容: 使用以下代码连接到PostgreSQL数据库服务器:

  • 我试图在一个我的组件中使用Tesseract来执行文件上的ocr。 .ts: .html 我遵循了这个,但是这个错误显示了 我应该怎么做才能让这个工作成功?