2017-05-26 11 views
0

Sencha Test 2.1を使用してメッセージボックス内のテキストを検証する方法を知っていますか?などができない、私が試したSencha TestがMessageBoxの内容を確認する

ST.panel('messagebox').visible().expect('value').toEqual('Awesome, all went well!'); 

値、テキスト:

ST.panel('messagebox').visible(); 

だから私のような何かをしたい:

は、私はこのような実際のメッセージボックスを取得することに成功してい使用する財産を見つけるようです。

答えて

1

グラッド(なし、それは本当にメッセージボックスの内容ではありません)

messageBox: function() { 
     return ST.panel('messagebox').visible(); 
}, 

this.messageBox().element('[html="Awesome, all went well!"]').visible(); 

(このコードは、ページオブジェクト内でした)解決策を出してください。これは確かに望ましいだろう

it('should have the right html', function() { 
    Ext.Msg.alert('Title', 'Awesome, all went well'); 

    ST.panel('messagebox') 
     .gotoComponent('[cls=x-window-text]') 
     .expect('html') 
     .toBe('Awesome, all went well'); 
}); 

http://docs.sencha.com/sencha_test/2.1.0/api/ST.future.Component.html#method-get

+0

it('should have the right html', function() { Ext.Msg.alert('Title', 'Awesome, all went well'); ST.panel('messagebox') .gotoComponent('[cls=x-window-text]') .get('html') .and(function() { expect(this.future.data.html).toBe('Awesome, all went well'); }); }); 

あるいはさらにコンパクト:あなたは「HTML」に直接アサーションのより多くしたい場合、あなたはとてもような何かを行うことができます:) しかし、私はそこにhtmlを使用することはできません私は信じているように。 私は期待どおりに「素晴らしい、すべてがうまくいった」と定義されていません。 これは試しましたか? –

+1

ああ、申し訳ありませんが、あなたは正しいです。 MessageBoxにはいくつかのネストされたコンポーネントがありますので、最初に正しいものを取得してから、そこからhtmlを抜き取る必要があります。私は実際の例で答えを更新しました。ありがとう! –

1

は、私はこのようにそれをやった:;)あなたが考え出し