如何使用 codeception 抓取元素?

Ale*_*mia 3 php automated-tests acceptance-testing codeception

假设我们有以下 HTML 代码:

<div>
  <p id="fruit">Apple</p>
</div>
Run Code Online (Sandbox Code Playgroud)

如何#fruit通过 codeception抓取并检查其内部 HTML?

Ale*_*mia 5

看起来,Codeception在这种情况下使用executeJSexecuteInSelenium(不推荐)使用。

这是一个executeJS与 JQuery 一起使用的示例:

<?php
  $fruitVal = $I->executeJS('return $(#fruit).val()');
?>
Run Code Online (Sandbox Code Playgroud)

查看更多信息:Codeception 文档:executeJS


事实证明,还有另一种“更自然”的方式来处理这种情况:

下面是一个使用grabAttributeFrom方法的例子:

<?php
  $fruitVal = $I->grabAttributeFrom('#fruit', 'innerHTML');
?>
Run Code Online (Sandbox Code Playgroud)

查看更多信息:Codeception 文档:grabAttributeFrom