PHPUnit + Selenium`InvalidArgumentException:找不到元素`
Posted
技术标签:
【中文标题】PHPUnit + Selenium`InvalidArgumentException:找不到元素`【英文标题】:PHPUnit + Selenium `InvalidArgumentException: Element not found` 【发布时间】:2020-03-25 15:21:44 【问题描述】:按照here 的示例,尝试实现一些 Selenium 测试。
测试类代码:
class ***Test extends \phpUnit_Extensions_Selenium2TestCase
protected function setUp(): void
$this->setHost('localhost');
$this->setPort(4444);
$this->setBrowserUrl('https://***.com/');
$this->setBrowser('chrome');
parent::setUp();
public function onNotSuccessfulTest(Throwable $e): void
$filedata = $this->currentScreenshot();
$file = __DIR__ . '/' . time() . '.png';
file_put_contents($file, $filedata);
parent::onNotSuccessfulTest($e);
/**
* @test
*/
public function visit_home_page_case_success()
$this->url('/');
dump($this->title());
dd($this->byTag('body')->text()); //line 35
控制台输出:
...
"Stack Overflow - Where Developers Learn, Share, & Build Careers"
...
There was 1 error:
1) ...\***Test::visit_home_page_case_success
InvalidArgumentException: Element not found.
...
.../***Test.php:35
...
截图:
出了什么问题以及如何与页面元素进行交互?
重复here。
【问题讨论】:
【参考方案1】:回复here:
很遗憾 phpunit-selenium 还不支持 W3C 模式,你可以通过以下方式强制它使用非 w3c 模式:
$this->setDesiredCapabilities(['chromeOptions' => ['w3c' => false]]);
【讨论】:
以上是关于PHPUnit + Selenium`InvalidArgumentException:找不到元素`的主要内容,如果未能解决你的问题,请参考以下文章
PHPUnit/Selenium 无法找到 *any* 元素
将带有梨的 PHPUnit Selenium 安装到 Windows 中
在 PHPUnit 的 Selenium 扩展中使用 glob 来识别元素