2014-06-12 92 views
0

使用硒/ C#選擇跨度類元件

我有其中在用戶登錄(jonpark2),一旦用戶已經這樣做了他們的用戶名存儲在跨度類的文本的自動測試的情況下,我需要選擇這個元素,然後驗證它的斷言。

我有下面的嘗試和選擇這樣的:

public static void Userloggedin() 
{ 
    var userlogedin = Driver.Instance.FindElement(By.ClassName("username")); 
    var selectelement = new SelectElement(userlogedin); 
    selectelement.SelectByText("JonPark2"); 
} 

當我運行此我遇到的錯誤OpenQa.Selenium.Support.UI.unexpectedTagNameException:Element should have been select but was div.

下面的HTML詳細顯示什麼,我試圖選擇:

<div class="content-wrapper"> 
    <div class="float-left"> 
    <div class="float-right"> 
     <section id="login"> 
     <p> 
      <a title="Manage your account" class="username" href="Account/Manage"> 
      Text - Empty Text Node 
       <span class="username"> 
       Text - JonPark2 

任何人都可以指出我出錯的地方嗎?

+0

嘗試從父元素檢測跨度... – user1853128

回答

0

您可以通過XPath的選擇元素:

var spanElement = Driver.Instance.FindElement(By.XPath("//span[contains(@class, 'username')]"));

再取文本:

var textInSpan = spanElement.Text

+0

我已經試過這一點,但是這會返回一個錯誤,元素應該是選擇但跨度。 – user3451887

+0

我認爲SelectElement是