OPC.Tests.SmokeTest(TestFixtureSetUp):SetUp:OpenQA.Selenium.InvalidSelectorException

时间:2012-06-10 00:32:20

标签: c# selenium css-selectors webdriver

我正在尝试使用CssSelector在我的网页上找到一个元素。我正在使用Firefox驱动程序。

以下是我使用定位器的方法(我检查过Selenium IDE能够找到我的元素

[FindsBy(How = How.CssSelector, Using = "label:contains('Version: 2.0.')")]
public IWebElement labelVersion;

但是当在C#代码中使用它并用它初始化时 我的构造函数中的PageFactory.InitElements。

我遇到了这个错误......(错误本身很清楚,但我不知道如何修复它)

感谢任何输入。

  

OPC.Tests.SmokeTest(TestFixtureSetUp):SetUp:   OpenQA.Selenium.InvalidSelectorException:给定的选择器   css = label:contains('Version:2.0。')无效或无效   导致WebElement。发生以下错误:[例外...   “指定了无效或非法字符串”代码:“12”nsresult:   “0x8053000c(NS_ERROR_DOM_SYNTAX_ERR)”位置:   “文件:///........../anonymous439571104.webdriver-profile/extensions/fxdriver@googlecode.com/components/driver_component.js   行:5811“]

1 个答案:

答案 0 :(得分:5)

Selenium将CSS查询委托给浏览器。这意味着CSS查询需要遵循CSS标准。

不幸的是:一段时间后,包含已从标准中删除。我建议您使用spec中提供的内容重做选择器,或使用XPATH。

:包含Selenium RC中的作品,因为RC使用Sizzle,jQuery中的选择器搜索库,如果你想知道为什么它在RC中工作而不是WebDriver