使用 href 文本和存储的变量查找链接

本文关键字:变量 查找 链接 存储 href 文本 使用 | 更新日期: 2023-09-27 18:34:57

使用C#和Selenium Webdriver,我试图找到一个包含自动生成ID的href

在我的自动化脚本中,我已将此值存储在名为 _studentId 的变量中

我想做的是

  1. 找到包含相同 ID 值的href是存储在 _studentId 变量中的值,并且
  2. 单击链接。

下面是包含 href 和 Id 值的页面源的示例。注意:Id 值会发生变化,因此我不仅需要根据href值识别链接,还需要使用与我的 _studentId 变量相同的动态 Id 值来识别链接。包含值333795的部分是与_studentId变量匹配的部分。

<td class="score input input-blue">
     <a title="Test Result" size="340,300" class="frameDialog" href="/Body/Students/Enrollment/EdStudentInfo.aspx?Id=333795&amp;Pn=0&amp;tp=2">
          <span style="text-decoration: underline">None</span>
     </a>
</td>

以下代码将单击链接,但我需要使用 _studentId 变量更好地识别链接,因为将有许多链接具有相同的文本但具有不同的学生 ID 值。

IWebElement testResultsLink = driver.FindElement(By.CssSelector("[href*='Body/Students/Enrollment/EdStudentInfo.aspx']"));
testResultsLink.Click();

提前致谢

使用 href 文本和存储的变量查找链接

只需将之前存储的变量添加到选择器中

即可
"[href*='Body/Students/Enrollment/EdStudentInfo.aspx?id='" + _studnetID + "']"

或者简单地使用指向包含 ID a标记的 xpath。

"//a[contains(@href,'" +_studnetID + "')]"