我想测试表中的名字列的排序是否正常工作。该表由3列组成,“名字”,“姓氏”和“电子邮件”。
这就是名字栏的方式:
First Name column
Columns
我可以在表格中获取所有“名字”值,并在控制台中查看所有这些值。
我的问题是如何将这个值存储在一个列表中并对它们进行排序,然后将它们与表值进行比较
这是代码:
int numOfClicks = Int32.Parse(driver.FindElement(By.XPath(".//*[@id='injectview']/div/div/div/table[2]/tbody/tr/td[1]/ul/li[8]/a")).Text);
Console.WriteLine(numOfClicks);
driver.FindElement(By.XPath(".//*[@id='injectview']/div/div/div/table[2]/tbody/tr/td[1]/ul/li[1]/a")).Click();
Thread.Sleep(2000);
for (int i = 1; i <= numOfClicks; i++)
{
IList<IWebElement> records_in_page = driver.FindElements(By.XPath(".//*[@id='injectview']/div/div/div/table[1]/tbody/tr/td[1]"));
for (int j = 1; j <= records_in_page.Count; j++)
{
string firstName = driver.FindElement(By.XPath(".//*[@id='injectview']/div/div/div/table[1]/tbody[" + (j + 1) + "]/tr/td[1]")).Text;
Console.WriteLine(firstName);
}
driver.FindElement(By.CssSelector("#injectview > div > div > div > table:nth-child(3) > tbody > tr > td:nth-child(1) > ul > li.pagination-next.ng-scope > a")).Click();
}
其余的代码只是导航到页面,我只是发送了获取列值的部分 谢谢你的帮助。
答案 0 :(得分:5)
您必须在列表中保存您的名字,然后进行比较。 如果您有名字的Id / Class名称,您可以使用更好的方法获得所有名字
<div class="col-md-8" data-bind="datepickerCtrl: {valueName:'dtS'}"></div>