gpt4 book ai didi

C# Selenium : How to count elements and get selected option from a selection element

转载 作者:行者123 更新时间:2023-11-30 23:27:31 25 4
gpt4 key购买 nike

我正在使用 C# - Selenium Webdriver

我需要测试一个选择元素数量未知的页面。可能是一、二、三……在下面的案例中,它包含 4 个选项。

这里有两个问题。

  1. 如何计算选择标签的数量,以便我可以循环获取每个选择标签中的所选选项。

  2. 使用 Selenium WebDriver C# 获取选定文本的正确语法是什么?

谢谢。

<select name="ps_ck$0" id="ps_ck$0" >
<option value="A">Active</option>
<option value="C">Cancelled</option>
</select>

<select name="ps_ck$1" id="ps_ck$1" >
<option value="A">Active</option>
<option value="X">Cancelled</option>
</select>

<select name="ps_ck$2" id="ps_ck$2" >
<option value="A">Active</option>
<option value="X">Cancelled</option>
</select>

<select name="ps_ck$3" id="ps_ck$3" >
<option value="A">Active</option>
<option value="X">Cancelled</option>
</select>

最佳答案

您可以使用FindElements() 方法并通过标签名称查找所有select 元素。对于找到的每个 select 元素,初始化 SelectElement类实例并获取SelectedOption property的值:

IList<IWebElement> selectElements = driver.FindElements(By.TagName("select"));

foreach (IWebElement select in selectElements)
{
var selectElement = new SelectElement(select);
Console.WriteLine(selectElement.SelectedOption.Text);
}

请注意,我们可以更具体地定位 select 元素并检查 name 属性以使用 ps_ck 开头CSS 选择器:

IList<IWebElement> selectElements = driver.FindElements(By.CssSelector("select[name^=ps_ck]"));

关于C# Selenium : How to count elements and get selected option from a selection element,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36538333/

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