2014-10-08 19 views
2

試圖讓我的格中的文本:量角器如何從div獲取文本?

<div class="ng-scope ng-binding"> 
     Hello this is it! 
</div> 

在我已經(使用XPath)我的茉莉花腳本:

var helloTxt=driver.findElement(by.xpath('//*[@id="top"]/div/div/div[3]/div[2]/div/div[1]/div[1]/div/div')); 
expect(helloTxt.getText()).toBe('Hello this is it!'); 

的代碼如下所示:

<div class="container"> 
     <div data-ng-repeat="message in getMessages() track by $index"> 
      {{message}} 
     </div> 
</div> 

如何我可以檢查是否收到{{message}}的消息? 有沒有另一種方法來訪問這個div而不使用xpath?或者我該如何解決這個問題?

+0

看起來有些綁定在等着我們編輯,你可以分享源代碼,而不是角度編譯的HTML? – 2014-10-08 04:14:21

+0

另外:避免'findElement'並且每次都選擇'element(by.xxxx'),如果可能的話使用一個更好的選擇器而不是'xpath',特別是讓你的測試依賴於嵌套的div位置 – 2014-10-08 04:15:19

+1

@Leo I added some html :) – Pindakaas 2014-10-08 04:24:24

回答

12

目標假設你提供的container

var messageElms = $('.container').all(by.binding('message')); 

內的所有消息預計只有1個消息:

expect(messageElms.count()).toBe(1); 

假設你指望你好是第一條消息:

expect(messageElms.get(0).getText()).toEqual('Hello this is it!'); 
+1

非常出色的工作獅子座 – Pindakaas 2014-10-08 04:50:29

相關問題