2017-06-10 12 views
0

角度2とe2eテストを開始しましたが、分度器を使って空白部分をクリックすると、ブートストラップ4モーダルを閉じようとしています。角度2 e2eテスト

it('should close the login modal when the blank space outside of the modal is clicked',() => { 
    element(by.tagName('body')).click().then(function() { 
    browser.sleep(250); 
    expect(element(by.id('myModal')).isDisplayed()).toBeFalsy(); 
    }); 
}); 

を...と私も試してみた:私が試した

it('should close the login modal when the blank space outside of the modal is clicked',() => { 
    browser.actions() 
    .mouseMove(element(by.id('login_modal')), -20, -20) 
    .click().then(function() { 
    browser.sleep(250); 
    expect(element(by.id('login_modal')).isDisplayed()).toBeFalsy(); 
    }); 
}); 

私は角2世新たなんだ、そう答えはおそらく明らかです。助けをありがとうございました。

+0

質問/問題は何ですか。それは閉じていないのですか? – wswebcreation

+0

正しい。私は空白の領域をクリックしてモーダルを閉じることができません。 –

答えて

0

あなたのHTMLは見たことがありませんが、これは起こると思います。 click - 要素に作用すると、要素の中心にクリックが実行されます(actions docsを参照)。

モーダルがページ上にどのように配置されているかによって異なりますが、通常はモーダルがページの中央にあります。私たちは与えられたと我々はあなたが上述の最初のクリックコマンドを実行すると、我々はそれをフルスクリーンbody上で次の

  • クリック、体を取得することを使用している場合は、体の中心はをクリックしますモーダル=>モーダルが

を閉じられませんあなたが記述第2のクリックコマンドを使用すると、オブジェクトを提供する必要があるため、hereを参照してください失敗したので、

browser.actions() 
 
    .mouseMove(element(by.id('login_modal')), { 
 
    x: toRight, 
 
    y: toBottom 
 
    }) 
 
    .click().then(function() { 
 
    browser.sleep(250); 
 
    expect(element(by.id('login_modal')).isDisplayed()).toBeFalsy(); 
 
    });
にする必要があります

0

私は答えに感謝しました。私はこれが適切であるブートストラップ・モーダルであることを伝えたはずです。呼び出されると、モーダルは中央の矩形だけでなくページ全体をカバーします。私の座標をx:0、y:0に設定することで、私はモーダルの "空白"領域にいました。

関連する問題