IE11在Selenium的Chrome中运行良好,但无法使用xpath查找元素
HTML 代码 使用此xpath,我的测试在chrome中通过,但在IE11中失败,如下所示 错误IE11在Selenium的Chrome中运行良好,但无法使用xpath查找元素,selenium,internet-explorer,xpath,automated-tests,internet-explorer-11,Selenium,Internet Explorer,Xpath,Automated Tests,Internet Explorer 11,HTML 代码 使用此xpath,我的测试在chrome中通过,但在IE11中失败,如下所示 错误 但是没有运气。任何解决方法的想法或指针。提前感谢。XPath因在Internet Explorer中工作不好而臭名昭著。尝试使用CSS选择器。另外,是否有必要使用IE?Chrome和Firefox是Selenium的最佳选择。有时候IE引擎无法解析复杂的xpath。你能试试这个吗//td[contains.,'SOID:']/下面的兄弟姐妹::td并选中这个xpath//table//tr/td[
但是没有运气。任何解决方法的想法或指针。提前感谢。XPath因在Internet Explorer中工作不好而臭名昭著。尝试使用CSS选择器。另外,是否有必要使用IE?Chrome和Firefox是Selenium的最佳选择。有时候IE引擎无法解析复杂的xpath。你能试试这个吗//td[contains.,'SOID:']/下面的兄弟姐妹::td并选中这个xpath//table//tr/td[containstext,'SOID:']/下面的兄弟姐妹::td[text='123456789']注意:在执行这个xpath之前,需要等待几秒钟,这样驱动程序就可以找到webelement了。对于等待,请使用显式等待方法。跟踪td class=label并移动到以下同级::td的任何特定要求?都尝试更改xpath并添加显式等待,但结果无关紧要。是的,这是确保我得到SOID值的要求。是的,这是在IE中运行测试的要求。将尝试CSS选择器。
<tr>
<td class="label" width="30%" valign="bottom">SOID:
</td>
<td class="desc" valign="top">123456789</td>
</tr>
".//td[contains(@class,'label') and contains(.,'SOID:')]/following-sibling::td"
public string MyMethod()
{
string soidXpath = ".//td[contains(@class,'label') and contains(.,'SOID:')]/following-sibling::td";
IWebElement soidElem = driver.FindElement(By.XPath(soidXpath));
return soidElem.Text;
}
Test 'H.Auto.RegressionSuite.TestCases.HN.HnLgoinTest.TC_Hn_login' failed: OpenQA.Selenium.InvalidSelectorException : Unable to locate an element with the xpath expression .//td[contains(@class,'label') and contains(.,'SOID:')]/following-sibling::td because of the following error:
[object Error]
at OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(Response errorResponse)
at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters)
at OpenQA.Selenium.Remote.RemoteWebElement.FindElement(String mechanism, String value)
at OpenQA.Selenium.Remote.RemoteWebElement.FindElementByXPath(String xpath)
at OpenQA.Selenium.By.<>c__DisplayClasse.<XPath>b__c(ISearchContext context)
at OpenQA.Selenium.By.FindElement(ISearchContext context)
at OpenQA.Selenium.Remote.RemoteWebElement.FindElement(By by)
0 passed, 1 failed, 0 skipped, took 39.33 seconds (NUnit 2.5.10).
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InternetExplorer\Main\FeatureControl\FEATURE_DISABLE_INTERNAL_SECURITY_MANAGER