C# 使用selenium和CssSelector访问html标记
我正在尝试访问html标记C# 使用selenium和CssSelector访问html标记,c#,selenium,browserstack,C#,Selenium,Browserstack,我正在尝试访问html标记标题>div.column 这是我的代码:var element=driver.FindElement(By.CssSelector(“header>div.column”)).GetCssValue(“order”) 但我得到了GetCssValue的对象引用问题。看起来所选标记没有“顺序”属性 我错过了什么? 附加的html代码截图 更新 我使用BrowserStack进行测试,当我使用Chrome作为浏览器时,它可以工作,但当我选择IE或Iphone时,相同的代码
标题>div.column
这是我的代码:var element=driver.FindElement(By.CssSelector(“header>div.column”)).GetCssValue(“order”)代码>
但我得到了GetCssValue的对象引用问题。看起来所选标记没有“顺序”属性
我错过了什么?
附加的html代码截图
更新
我使用BrowserStack进行测试,当我使用Chrome作为浏览器时,它可以工作,但当我选择IE或Iphone时,相同的代码不工作。
是因为我需要添加IE驱动程序或类似的东西吗?可能不受支持,具体取决于浏览器
您可以尝试使用与javascript不同的方法,使用getComputedStyle()
方法:
IWebElement element = driver.FindElement(By.CssSelector("header > div.column"))
IJavaScriptExecutor js = driver as IJavaScriptExecutor;
string title = (string)js.ExecuteScript("return window.getComputedStyle(arguments[0]).getPropertyValue('order');", element);
因此,.GetCssValue(“order”)代码>方法在这种情况下不起作用?@Alundrathedreamwalker是的,它可能是特定于浏览器的。据我所知(参考),order
属性在IE>=11上受支持。@AlundrathDreamWalker是否可以使用getComputedStyle()
?不,它在该浏览器上不工作,现在正在不同的浏览器上测试