C# 我的硒测试是在铬中进行的。单击属性
在处理这个项目时,我遇到了一个异常。它正在运行firefox,但不会在chrome中运行C# 我的硒测试是在铬中进行的。单击属性,c#,google-chrome,selenium,C#,Google Chrome,Selenium,在处理这个项目时,我遇到了一个异常。它正在运行firefox,但不会在chrome中运行 [Test] public void TheBtcTraderDenemeTest() { _driver.Navigate().GoToUrl(_baseUrl); Thread.Sleep(1500); _driver.FindElement(By.ClassName("btn btn-cust")).Click(); //*** Exception locati
[Test]
public void TheBtcTraderDenemeTest()
{
_driver.Navigate().GoToUrl(_baseUrl);
Thread.Sleep(1500);
_driver.FindElement(By.ClassName("btn btn-cust")).Click(); //*** Exception location is this one.
WebDriver.dll中出现“OpenQA.Selenium.IllegalLocatorException”类型的异常,但未在用户代码中处理
其他信息:不支持复合类名称。考虑搜索一个类名并过滤结果。
如果您对正在发生的事情有任何想法,我们将不胜感激。其他信息会告诉您一切。您应该选择其中一个类,而不是两个。根据名称和定义,ClassName将只接受单个CSS类名。你给它两个 Two是1)
btn
和2)btn cust
因此,它不再是一个“类名”选择器,而是一个通用的CSS选择器
因此,您需要执行以下任一操作:
仅使用其中一个,可能是btn cust
和By.ClassName
一起使用,或者保留现有内容,但将其放入CSS选择器中:
By.CssSelector("btn btn-cust")
FWIW,异常消息准确地告诉您什么是错误的,并且所说的与我们在这里所说的完全相同。当抛出异常时,请检查它们。他们来这里不是为了好玩。
“btn btn cust”
是个问题。你需要选择其中一个,而不是两个。然后过滤至正确的过滤器(如有必要)。这正是错误信息告诉你的。我认为你错了。谢谢你分享你的观点,@Turgut Kanceltikhow,是吗?给我举个例子?