我有一个用于输入名称,电子邮件ID和关系的表,但是所有列的ID都具有相同的ID,相同的类,相同名称,XPATH和CSS。因此,如何编写代码以在列中添加数据。我的意思是,"名称"列下的所有行都具有相同的ID,相同的类,同名,XPATH和CSS。因此,当我对其进行编码时,名称将在第一行中输入以获取名称,但未进入第二行。名称字段的第一列的HTML为
<input type="text" value="" title="Enter name of the user" name="Name" id="Name" class="required wid220"></pre>
名称字段的第二列的HTML为
<input type="text" value="" title="Enter name of the user" name="Name" id="Name" class="wid220 validEntry">
名称字段的第三列的HTML为
<input type="text" value="" title="Enter name of the user" name="Name" id="Name" class="wid220 validEntry">
如果您可以与此应用程序的开发人员进行交谈,那么您需要强烈抗议这是应用程序开发的糟糕标准。来查询,您可以使用列XPath来区分不同的输入...示例: -
//table/tbody/tr[1]/td[1]/input for first column;
//table/tbody/tr[1]/td[2]/input for second and so on.....
tr-表示行,TD-代表列
如果表具有ID或属性,则可以这样使用,
//table[@id='value']/tbody/.....
public static void EnterInTable(int rowNumber, string value)
{
// We don't care about the column as long as you have one text field here
string query = String.Format("//table[*some-id*]//td[{0}]//input", rowNumber);
driver.findElement(:xpath, query).sendKeys = value;
}