2016-10-28 7 views
2

分度器を使って、すべてのクッキー、セッション/状態クッキー、ストレージなどを完全に削除する方法を探しています。基本的には、ユーザが「設定」 - >「ブラウズデータを消去」に行くと、分度器で同じことを達成したいと思います。分度器:ブラウジングデータを完全に消去する

browser.manage().deleteAllCookies() httpOnly Cookieは削除しません。 JavaScriptはhttpOnly Cookieにアクセスできないため、JavaScriptを使用することはできません。

私は分度器でブラウザを再起動することはできますが、このルートには行かない方がいいと思います。

提案がありますか?

+0

セッションとローカルストレージをクリアするための最良の方法だった:https://github.com/angular/protractor/issues/172 upshotはtryです:browser.driver.manage()。deleteAllCookies(); – racraman

+1

私は 'browser.driver.manage()。deleteAllCookies()'と 'browser.driver.manage()。deleteAllCookies()'の両方を使用しました。セッションCookieは削除されません。 – mws

+1

私は 'browser.jp.localStorage.clear()'のようなjavascriptスニペットを実行して、 'browser.driver.manage()。deleteAllCookies()'を試しました。さまざまなテストで保存されている状態のいくつかの側面があります。これは私にとっても問題です。通常のSelenium Webdriverテストでは簡単に実行できるものであるため、テスト間でブラウザを終了させることは自由です。編集: 'browser.restart()'はここで探求する価値のある選択肢です。 –

答えて

2

回避策として、私はafterEachbrowser.restart()をテスト用に使用することができました。これはProtractor 3.0.0に導入されたようです。それは場合に役立ちます

0

はアンソニーPanozzoによるこの答えは私がこれを見つけた(https://stackoverflow.com/a/25678498/5072980

afterEach(function() { 
    browser.executeScript('window.sessionStorage.clear();'); 
    browser.executeScript('window.localStorage.clear();'); 
}); 
関連する問題