gpt4 book ai didi

java - 如何比较下拉选项与 Selenium WebDriver 中的 UI 选项是否匹配?

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

  • 目前正在开发 Selenium WebDriver 并使用 Java 编写脚本。

  • 我已将 db 的所有下拉值存储在属性文件中,并且想要比较相同的值,无论它们是否在 UI 中,如 DropDown 选项中。

  • 位于 C: 目录中的 visualization.txt 包含以下选项visualizationId=日、周、月、季度、学期、年、RD 技术组、ICC、中心、软件包、产品、项目、客户 PR、严重性、优先级

那么我如何比较两个值是否匹配。我需要从属性文件(即 Visualization.txt)获取所有下拉选项,然后需要检查 UI 中的下拉菜单。

enter image description here

<select id="visualizationId" style="width: 120px; display: none;" name="visualization">
<option value="day">Day</option>
<option value="week">Week</option>
<option selected="" value="month">Month</option>
<option value="quarter">Quarter</option>
<option value="semester">Semester</option>
<option value="year">Year</option>
<option value="techgroup">RD Tech Group</option>
<option value="icc">ICC</option>
<option value="center">Center</option>
<option value="softwarepack">Software Pack</option>
<option value="product">Product</option>
<option value="project">Project</option>
<option value="customer">Customer PRs</option>
<option value="severity">Severity</option>
<option value="priority">Priority</option>
</select>

最佳答案

尝试下面的代码。应该有帮助:

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;

BufferedReader in = new BufferedReader(new FileReader("C:\\visualization.txt"));
String line;
line = in.readLine();
in.close();

String[] expectedDropDownItemsInArray = line.split("=")[1].split(",");

// Create expected list :: This will contain expected drop-down values
ArrayList expectedDropDownItems = new ArrayList();
for(int i=0; i<expectedDropDownItemsInArray.length; i++)
expectedDropDownItems.add(expectedDropDownItemsInArray[i]);

// Create a webelement for the drop-down
WebElement visualizationDropDownElement = driver.findElement(By.id("visualizationId"));

// Instantiate Select class with the drop-down webelement
Select visualizationDropDown = new Select(visualizationDropDownElement);

// Retrieve all drop-down values and store in actual list
List<WebElement> valuesUnderVisualizationDropDown = visualizationDropDown.getOptions();

List<String> actualDropDownItems = new ArrayList();

for(WebElement value : valuesUnderVisualizationDropDown){
actualDropDownItems.add(value.getText());
}

// Print expected and actual list
System.out.println("expectedDropDownItems : " +expectedDropDownItems);
System.out.println("actualDropDownItems : " +actualDropDownItems);

// Verify both the lists having same size
if(actualDropDownItems.size() != expectedDropDownItems.size())
System.out.println("Property file is NOT updated with the drop-down values");

// Compare expected and actual list
for (int i = 0; i < actualDropDownItems.size(); i++) {
if (!expectedDropDownItems.get(i).equals(actualDropDownItems.get(i)))
System.out.println("Drop-down values are NOT in correct order");
}

关于java - 如何比较下拉选项与 Selenium WebDriver 中的 UI 选项是否匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22651007/

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