Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.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
IE11在Selenium的Chrome中运行良好,但无法使用xpath查找元素_Selenium_Internet Explorer_Xpath_Automated Tests_Internet Explorer 11 - Fatal编程技术网

IE11在Selenium的Chrome中运行良好,但无法使用xpath查找元素

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[

HTML

代码

使用此xpath,我的测试在chrome中通过,但在IE11中失败,如下所示

错误


但是没有运气。任何解决方法的想法或指针。提前感谢。

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