如何使用Mink查找文本节点元素?

sf_*_*anb 10 php functional-testing behat

我想知道,我有这个HTML:

<li>
  <span class="jqTransformRadioWrapper">
    <a rel="choices[choices]" class="jqTransformRadio jqTransformChecked" href = "#"></a>
    <input type="radio" id="choices_choices_5" value="5" name="choices[choices]" class="jqTransformHidden">
  </span>
  <label for = "choices_choices_5" style = "cursor: pointer;">My awesome test</label>
</li>
Run Code Online (Sandbox Code Playgroud)

有些人可能会认识到输入是jqTransformed

我想知道如何点击名为"我很棒的测试"的标签.

现在,我这样做:

   $el = $this->getSession()->getPage()->find('css', 'ul li span.jqTransformRadioWrapper a');
   $el->click();
Run Code Online (Sandbox Code Playgroud)

但它选择了第一个元素.我想用他们的名字(并且只有)选择它们,对于这个例子,它将是"我真棒的测试".

谢谢

sf_*_*anb 13

这是答案:

$this->getSession()->getPage()->find('xpath', '//label[text()="My awesome test"]');
Run Code Online (Sandbox Code Playgroud)