我在自动化分页测试时遇到了问题。 我的代码能够在第一页上遍历表格,如果“找不到搜索元素”,也可以单击下一页。但是,问题在于,对于第二页,它没有保存/获取表的数据。虽然所使用的表类对所有页面都是静态的。 请帮我解决这个问题。这是我的一大堆代码:
IWebElement pagingInfo = webDriver.FindElement(By.ClassName("Dj")); //Getting text from Page info in the form of "1-emailsPerPage of totalNumberOfEmails"
string[] stringArray = pagingInfo.Text.Split(' ');
int totalNumberOfEmails = Convert.ToInt32(stringArray[2]);
int emailsPerPage = Convert.ToInt32(stringArray[0].Substring(2));
int clickCount = totalNumberOfEmails / emailsPerPage;
for (int i = 0; i <= clickCount; i++)
{
IWebElement tableInbox = webDriver.FindElement(By.ClassName("Cp")).FindElement(By.ClassName("F"));
IList<IWebElement> rowsCollection = tableInbox.FindElements(By.TagName("tr"));
foreach (IWebElement row in rowsCollection)
{
IList<IWebElement> columnCollection = row.FindElements(By.TagName("td"));
if (columnCollection[5].Text.Contains("Fwd: Security"))
{
Console.WriteLine("Record found");
recordFound = true;
break;
}
}
if (recordFound == true)
break;
webDriver.FindElement(By.ClassName("ar5")).FindElement(By.ClassName("amJ")).Click();
Thread.Sleep(5000);
}
if (recordFound == true)
Console.WriteLine("Record Found");
else
Console.WriteLine("Record Not Found");
请帮助!!在此先感谢:)
答案 0 :(得分:0)
实际上,该页面使用的是Ajax,所以我必须使用iFrame来浏览每个页面的同一个表。 使用iFrame解决了我的目的。 经过大量的研究,问题终于得到了解决。 :)