2013-03-31 39 views
-1

我想寫一個終端到終端的測試,檢查是否AP標籤存在含有一些具體的文字:AngularJS測試支票P包含文本

it('should display search result snippet for a result item', function() { 
    input('query').enter('One'); 
    element('#submitSearchButton').click(); 
    expect(element('.emails li p').text()).toEqual('This is a search result snippet for email one') 
}) 

但是我得到:

expected "This is a search result snippet for email one" but was "\n\t\t\t\t\t\tThis is a search result snippet for email one\n\t\t\t\t\t" 

我如何檢查頁面是否包含所需文字?

編輯:

好吧,我認爲這是因爲我測試的東西,是在一個HTML模板。此模板格式,使之更容易閱讀,但我糊塗了,因爲我是在瀏覽器中查看所提供網頁:

<p> 
    {{email.snippet}} 
</p> 

我現在的問題是我應該如何去測試在角端到端測試我的電子郵件代碼段按預期呈現?我應該重新格式化模板,還是應該以不同的方式解決這個問題?

+0

使用正則表達式來測試值,而不是直接比較 – charlietfl

+0

的你不應該在你的測試,靜態值。價值從哪裏來?使用換行符和製表符,我假設它來自HTML文件,這讓我想知道爲什麼要測試它包含手動寫入的內容。你能詳細說明嗎? –

+0

爲什麼有人爲此問題投下我的票? – shmish111

回答

-2

我不知道爲什麼你的代碼看起來像這樣。在jQuery的檢查如果p包含一些文本,你只需要做:

if ($('p:contains("someText")').length > 0) { 
    // Your code here 
}