【问题标题】:PHPUnit and Selenium and getting value from elements issuePHPUnit 和 Selenium 以及从元素问题中获取价值
【发布时间】:2014-08-24 17:34:30
【问题描述】:

所以我开始使用 PHPUnitSelenium 2

public function testHasALoginForm()
{
    $this->url('/login');

    $username = $this->byName('username');
    $password = $this->byName('password');

    $this->assertEquals('', $username->value());
    $this->assertEquals('', $password->value());
}

这只发生在我从元素中调用value() 方法并且我最终得到:

1) test\view\LoginTest::testHasALoginForm
PHPUnit_Extensions_Selenium2TestCase_WebDriverException: GET /session/fdcf0669-1d42-4a35-8e7a-29dec4a0f1e4/element/0/value
Build info: version: '2.42.1', revision: '68b415a', time: '2014-05-29 16:16:49'
System info: host: 'Something.local', ip: '192.168.1.108', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.9.3', java.version: '1.8.0_05'
Driver info: driver.version: unknown

我是不是做错了什么?

【问题讨论】:

    标签: php testing selenium phpunit


    【解决方案1】:

    ->value() 方法已在 selenium v​​2.42.0 中删除。目前推荐的解决方案是使用$element->attribute('value')

    @见https://code.google.com/p/selenium/source/detail?r=953007b48e83f90450f3e41b11ec31e2928f1605

    【讨论】:

    • 是的,这为我解决了。我发现这很难诊断——即使单步执行代码并看到通过 curl 从服务器返回的 500 错误也没有说明任何问题。当旧代码停止工作时,真是令人沮丧!感谢您的解决方案。
    【解决方案2】:

    您好,我使用大致相同的代码遇到了完全相同的错误。我正在使用与您相同版本的硒。 但是,我在使用 2.39.0 版本时没有收到此错误。 因此,它似乎是一种回归或不推荐使用。

    【讨论】:

      猜你喜欢
      • 2014-09-22
      • 2016-11-28
      • 2013-07-24
      • 2023-04-03
      • 1970-01-01
      • 2021-10-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多