2017-07-20 2 views
0

私のシナリオの1つでは、ブラウザのキャッシュをクリアする必要がありますが、私は下のものを試しましたが、うまく動作しません。分度器のブラウザキャッシュを消去する方法

browser.driver.manage().deleteAllCookies(); 
browser.executeScript('window.sessionStorage.clear();'); 
browser.executeScript('window.localStorage.clear();'); 

誰もがこの上で私を助けることができます..私はあなたがまだあなたがすべてをクリアすることを主張した場合、あなたのデバッグ作業

var fork = browser.forkNewDriverInstance(); 
fork.get('page1'); 

を簡素化しますフォークのブラウザでそれをやってお勧めすべての

+0

達成しようとしていることを詳しく説明できますか?これらのスクリプトをどこで実行しようとしていますか? –

+0

これは残酷かもしれませんが、私は 'browser.restart()'を使用しています(http://www.protractortest.org/#/api?view=ProtractorBrowser.prototype.restart) – evenstar

答えて

2

function LoginPage() { 
    this.get = function() { 
     browser.get('#/Login'); 
     browser.executeScript('window.localStorage.clear();'); 
     browser.executeScript('window.sessionStorage.clear();'); 
     browser.driver.manage().deleteAllCookies(); 
    } 
} 

module.exports = new LoginPage; 

その後、I私のテストスクリプトのいずれかでクッキー、セッション/ローカルストレージをクリアするたびに、この関数を使います。

var loginPage = require('.././LoginPage'); 
loginPage.get(); 
+0

...私は機能としてそれを変換した場合、それは正常に動作します。助けてくれてありがとう。 – KAK

1

ファーストブラウザを再起動することができます

browser.restart(); // Restart the browser clears everything (careful as it returns Promise) 
browser.restartSync(); // Same as previous but synchronous == await browser.restart() 

さらに良い再起動フォーク

fork = fork.restartSync(); 
fork.get('page2'); // 'page2' gotten by restarted fork 

情報:https://github.com/angular/protractor/blob/master/lib/browser.ts#L537

P.S.わからない部分あなたは明確ではないことができますが、最後の手段として、私が提案することができますが、シークレットモードで

capabilities: { 
    'browserName': 'chrome', 
    'chromeOptions': { 
     'args': ['incognito'] 
    } 
}, 

情報:私はこのようにそれを使用https://github.com/angular/protractor/blob/master/docs/browser-setup.md#adding-chrome-specific-options

関連する問題