Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 试图通过传递字符串来查找下拉菜单选项_C#_Selenium_Selenium Webdriver - Fatal编程技术网

C# 试图通过传递字符串来查找下拉菜单选项

C# 试图通过传递字符串来查找下拉菜单选项,c#,selenium,selenium-webdriver,C#,Selenium,Selenium Webdriver,我正在努力通过传递字符串来定位下拉菜单项 “电子邮件”字符串 public class Email { public static void Select() { MenuSelector.SelectOption("Email"); } } 是否可以连接字符串以找到所需的选项 public static void SelectOption(string option) { Driver.Instance.FindElement(By.CssSel

我正在努力通过传递字符串来定位下拉菜单项

“电子邮件”字符串

public class Email
{
    public static void Select()
    {
        MenuSelector.SelectOption("Email");
    }
}
是否可以连接字符串以找到所需的选项

public static void SelectOption(string option)
{
   Driver.Instance.FindElement(By.CssSelector(".form-control>option" + option)).Click();
}
下拉菜单

<select class="form-control" name="searchType">
    <option>JobTitle</option>
    <option>Name</option>
    <option>Recruiter</option>
    <option>Reference</option>
    <option>Email</option>
    <option>PhoneNumber</option>

职务
名称
招聘人员
参考文献
电子邮件
电话号码
有一种更好的方法:

有一种更好的方式和方法:


谢谢,出于完整性的考虑,答案可能应该包含关于如何通过CSS选择器查找与元素文本不匹配的信息,这解决了最初提出的实际问题。谢谢,出于完整性的考虑,将给出一个答案,答案可能应该包含有关如何通过CSS选择器查找与元素文本不匹配的信息,这解决了最初提出的实际问题。
var selectElement = new SelectElement(driver.FindElement(By.Name("searchType")));
selectElement.SelectByText("PhoneNumber");