Selenium webdriver 连接被拒绝时测试失败:连接

Selenium webdriver 连接被拒绝时测试失败:连接,selenium-webdriver,codeception,acceptance-testing,Selenium Webdriver,Codeception,Acceptance Testing,我正在尝试使用codeception测试,但如果我启动它,它将冻结,并且在控制台中我看到: [Facebook\WebDriver\Exception\UnknownServerException] java.net.ConnectException: Connection refused: connect 我发现:这是selenium版本、驱动程序和谷歌chrome的问题。但如果我使用任何组合,我仍然无法通过 好的,我被扔了,在评论下面,问题是窗口防御者。当我关闭它时,测试开始了,

我正在尝试使用codeception测试,但如果我启动它,它将冻结,并且在控制台中我看到:

  [Facebook\WebDriver\Exception\UnknownServerException]
  java.net.ConnectException: Connection refused: connect
我发现:这是selenium版本、驱动程序和谷歌chrome的问题。但如果我使用任何组合,我仍然无法通过

  • 好的,我被扔了,在评论下面,问题是窗口防御者。当我关闭它时,测试开始了,但我遇到了另一个问题
下一个问题是错误:[PHPUnit\u Framework\u Exception]未定义的索引:ELEMENT,根据mRemote的日志,我发现问题在于行
$i->see('Stay signed')如果我删除它,错误将继续到另一行,该行是
$i->fillField(“#loginUsername”,$name)

有问题的方法:

public function login($name, $password)
{ $I=$this

// if snapshot exists - skipping login
if (method_exists($I, 'loadSessionSnapshot') && $I->loadSessionSnapshot('login')) {
    return;
}

// logging in
$I->wantTo('log in');
$I->amOnPage('/');
$I->see('Stay signed'); // <---- here is problem
$I->fillField('#loginUsername', $name);
$I->fillField('#loginPassword', $password);
$I->click('Přihlásit se');


if (method_exists($I, 'waitForElement')) {
    $I->waitForElement('.header');
} else {
    $I->waitForPageLoad();
}

// saving snapshot
if (method_exists($I, 'saveSessionSnapshot')) {
    $I->saveSessionSnapshot('login');
}
//如果存在快照-跳过登录
如果(方法_存在($I,'loadSessionSnapshot')&&$I->loadSessionSnapshot('login')){
返回;
}
//登录
$I->wantTo(“登录”);
$I->amOnPage('/');
$I->see('Stay signed');//fillField('loginUsername',$name);
$I->fillField(“#loginPassword”,$password);
$I->点击('Přihlásite se');
如果(方法_存在($I,'waitForElement')){
$I->waitForElement('.header');
}否则{
$I->waitForPageLoad();
}
//保存快照
如果(方法_存在($I,'saveSessionSnapshot')){
$I->saveSessionSnapshot('login');
}
}

问题在于行“$I->see('Stay signed')”,如果我删除这行代码,错误会跳到另一行“$I->fillField…”


有什么问题吗?

您运行的是什么命令,functional.suite.yml(我猜)是什么样子的?如果没有这类信息,很难说,但我认为这是某种防火墙问题。@tschunn可能有帮助,但我遇到了另一个问题,当我运行测试时窗口打开,所有测试都以错误结束:“Undefined index:ELEMENT”。这将显示Actor.php的一个错误,但是如果我删除带有错误的方法,错误将转移到另一个方法上,一些提示可能是什么问题?最后,为你的第一个答案,你能粘贴问题方法的来源吗?我假设这是一个PHP错误?@tschumann要想知道这个文本字段,我把它作为答案放在下面“java.net.ConnectException:Connection拒绝:connect”看起来像是Selenium无法连接到浏览器。“Undefined index:ELEMENT”是一个转移注意力的问题-
facebook/webdriver
不能很好地处理意外响应。最好看看Selenium的日志或一些调试输出。您正在运行什么命令,functional.suite.yml(我想)是什么样子的?如果没有这类信息,很难说,但我认为这是某种防火墙问题。@tschunn可能有帮助,但我遇到了另一个问题,当我运行测试时窗口打开,所有测试都以错误结束:“Undefined index:ELEMENT”。这将显示Actor.php的一个错误,但是如果我删除带有错误的方法,错误将转移到另一个方法上,一些提示可能是什么问题?最后,为你的第一个答案,你能粘贴问题方法的来源吗?我假设这是一个PHP错误?@tschumann要想知道这个文本字段,我把它作为答案放在下面“java.net.ConnectException:Connection拒绝:connect”看起来像是Selenium无法连接到浏览器。“Undefined index:ELEMENT”是一个转移注意力的问题-
facebook/webdriver
不能很好地处理意外响应。最好查看Selenium的日志或一些调试输出。