gpt4 book ai didi

java - 如何使用 selenium、java 验证排序选项结果包含正确的结果?

转载 作者:行者123 更新时间:2023-12-02 13:15:32 24 4
gpt4 key购买 nike

在我的应用程序中,我有一个包含表单名称的表,并且有一个排序按钮。我想验证单击排序按钮后出现的任何结果是否采用排序格式(表单名称可以包含字母、数字、空格、-)

我已经编写了从表单名称获取文本的代码,但为如何验证而苦苦挣扎。

 boolean flag = false;
List<WebElement> list = WebDriverFactory.getWebDriver().findElements(By.xpath(".//*[@id='paymentFormsTable']//tbody//tr"));
int size = list.size();
for (int i = 1; i <= size; i++) {
String a = WebDriverFactory.getWebDriver().findElement(By.xpath(".//*[@id='paymentFormsTable']//tbody//tr[" + i
+ "]//td[starts-with(@id,'payment-forms-form-name')]"))
.getText();

这是结果,我想验证天气是否已排序

(testing form
us
us test form
token veni form edit
text test form
text test form
testing veni form
testing form
tester form
Test-Partnere197
Test-Partnere193
Test-Partnere181
Test-Partnere180
Test-Partnere167
Test-Partnere164
Test-Partnere159
Test-Partnere156
Test-Partnere134)

最佳答案

我们需要一个引用排序字符串,以便与字符串的实际顺序进行比较。我们可以创建一个单独的数组并保持该数组的排序。稍后我们需要以相同的顺序从每个数组中取出每个字符串并相互比较。

如果数组中所有字符串都匹配,则按元素在网页中显示的顺序排序。

 boolean flag = false;
List<WebElement> list = WebDriverFactory.getWebDriver().findElements(By.xpath(".//*[@id='paymentFormsTable']//tbody//tr"));
int size = list.size();
String[] actual = new String[size];
String[] sorted = new String[size];

for (int i = 0; i < size; i++)
{
actual[i]=sorted[i] = WebDriverFactory.getWebDriver().findElement(By.xpath(".//[@id='paymentFormsTabl']//tbody//tr[" + i+ "]//td[starts-with(@id,'payment-forms-form-name')]")).getText();
}

//Sorting the array
Arrays.sort(sorted);

//Validating the existing with sorted array. shows no message if both are same
for(int i = 0;i<size;i++)
{
if(!actual[i].equals(sorted[i]))
{
System.out.println("The elements the webpage are not sorted");
System.out.println("expected "+sorted[i]+" but actual "+actual[i]+" at row "+i);
flag = true;
}
}

关于java - 如何使用 selenium、java 验证排序选项结果包含正确的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43781184/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com