我将下表排序&我想验证表是使用C#selenium
按顺序排序的将对第一个数值进行排序,并对字母表进行排序。
1
2
5
7
方丈
Edfdsf
Fdsf
我需要在c#selenium中验证。
我的想法:是否可以轻松地将每个行值转换为ASCII码并与下一行进行比较?
请提供您的建议?
答案 0 :(得分:0)
我建议您将显示名称存储在List
中,复制List
并对其进行排序,然后将其与原始列表进行比较。
List<String> displayNames = new List<string>();
// grab the cells that contain the display names you want to verify are sorted
IReadOnlyList<IWebElement> cells = Driver.FindElements(locator);
// loop through the cells and assign the display names into the ArrayList
foreach (IWebElement cell in cells)
{
displayNames.Add(cell.Text);
}
// make a copy of the displayNames array
List<String> displayNamesSorted = new List<string>(displayNames);
displayNamesSorted.Sort();
Console.WriteLine(displayNames.SequenceEqual(displayNamesSorted));
答案 1 :(得分:0)
最优雅的方式:
var cells = WebDriver.FindElements(locator);
Assert.IsTrue(cells.OrderBy(c => c.Text).SequenceEqual(cells));