2014-01-17 27 views
0

使用連結文字來瀏覽我從硒IDE下面的C#代碼:無法在硒C#

driver.FindElement(By.LinkText("Sub Link 1")).Click(); 

但由於它不工作,我修改下面的代碼等。它仍然沒有工作。

WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10)); 
IWebElement element = wait.Until(ExpectedConditions.ElementExists(By.LinkText("Main Link 1"))); 
if (element != null) 
{ 
    var innerElement = wait.Until(ExpectedConditions.ElementExists(By.PartialLinkText( 
     "Sub Link 1"))); 
} 

可能是什麼問題?

我的HTML:

<html> 
    <a href="#nav" title="Show navigation">Show navigation</a> 
    <a href="#" title="Hide navigation">Hide navigation</a> 
    <div id="navlogo"><a title="HOME" href="url"> 
     <span style="position:absolute;width:100%;height:100%;top:0;left: 0;"> 
     </span></a></div> 
    <ul class="clearfix"> 
     <li><a href="">MXLMain1</a> 
     <ul> 
     <li><a href="">ML1</a> 
     </li> 
     <li><a href="">ML2</a> 
     </li> 
     </ul> 
    </li> 
    <li><a href="">MXLMain2</a> 
    <ul> 
     <li><a href="">MK2</a> 
     </li> 
    </ul> 
    </li> 
    <li><a href="">Main Link 1</a> 
    <ul> 
     <li><a href="">Sub Link 1</a> 
     </li> 
     <li><a href="">Sub Link 2</a> 
     </li> 
    </ul> 
    </li> 
.......................... 
</html> 
+0

我記得我曾與一些linktext的問題,它永遠不會找到我所需要的,所以每次當我想要搜索與文本的東西,我使用XPath爲//一個[文本( )='Sub Link 1'] –

+0

您是否嘗試了By.PartialLinkText。有時文本週圍的空間不會讓確切的元素找到。 –

+0

「不工作」是指*什麼*?什麼錯誤? – Arran

回答

0

關於使用XPath如何?

driver.FindElement(By.XPath("//a[.='Sub Link 1")).Click();