提问者:小点点

WebdriverIO无效选择器:无法使用xpath表达式定位元素


我面临一个问题,通过使用WebdriverIO在超文本标记语言圆顶上选择一个元素。注意:通过文本和h1标签或类名选择标题很容易,但我不想这样做。

相反,我希望iframe标签是我的起点,并通过部分src链接文本"nba分数"选择它,然后返回到前面的div与class="内部"或div与class="main"不选择它的类名,一旦我在前面的div上转到h1标签并使用pageTitle. getText()获取文本。

当我使用:

get pageTitle(){return $("//iframe[contains(@src, 'nba-scores')]/parent::div//h1)")}

我得到了一个语法错误:语法错误:在文档上执行“评估”失败:字符串“//iframe[包含(@src,'nba分数')]/父::div//h1)”不是一个有效的XPath表达式。

这是我的超文本标记语言圆顶

<main>
  <div class="main">
    <div class="inner">
       <h1 class="h1class">NBA Scores</h1>
    </div>
    <iframe src="https://xyz/#/nba-scores/view" class="viewscores">
    </iframe>
  </div>
</main>

任何帮助将不胜感激!


共1个答案

匿名用户

您确实有一个语法错误,没有打开,因此没有必要更改"//iframe[包含(@src,'nba分数')]/父级::div//h1)"//iframe[包含(@src,'nba分数')]/父级::div//h1"