繁体   English   中英

使用Selenium C#使用同一表中另一列的值检查一列中的框

[英]Checking a box in one Column using a value from another column in the same Table with Selenium C#

我正在使用 NUnit 在 C# (ChromeDriver) 中使用 Selenium 进行测试,并在这方面遇到了障碍。 我们有一个表格,可以根据为该帐户启用的内容动态加载各种产品。 我正在尝试围绕它编写测试以订购每个单独的产品,但我在标记一个复选框时遇到了障碍。 该表仅使用数字 ID 和用于产品名称的单独列(请参阅下面的 HTML 代码)。

有一个包含产品名称的隐藏字段,但我过去曾被告知,除非可见,否则 Selenium 无法看到它。

任何帮助或想法对我解决这个问题都是一个很好的开始。

<td align="center" valign="top">
    <input id="reports11.selected1" name="reports[11].selected" onclick="javascript:doCheckbox(11, false)" style="margin-top:5px" type="checkbox" value="true">
    <input type="hidden" name="_reports[11].selected" value="on">
    <input id="reports11.productClassId" name="reports[11].productClassId" type="hidden" value="1">
    <input id="reports11.productId" name="reports[11].productId" type="hidden" value="99599">
    <input id="reports11.name" name="reports[11].name" type="hidden" value="Product Build - TEST">
</td>

<td align="center" valign="top">
    <select id="reports11.priority" name="reports[11].priority" style="width:40px;padding:1px;margin: 0 0 0 0" onchange="javascript:doPriority(11)">
        <option value="0" selected="selected">--</option>
    </select>
</td>

<td valign="top">
    Product Build - TEST
</td>

下面的代码假设第一列的复选框和第三列的产品名称。

public void chooseProductbyName(productName)
{
 string xpath = "//tr[td[3][text()='"+productName+"']]/td[1]/input[@type='checkbox']";
 driver.findElement(by.xpath(xpath)).click();
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM