2011-04-20 32 views
4

我需要知道如何啓動一個瀏覽器實例,但有一個新的會話。我試圖清除cookie和清除緩存,但這並不能滿足我的需要。如何開始與Watin的新IE會話

在我的情況下,我將產品添加到購物籃,然後關閉瀏覽器,然後使用另一個添加不同產品的網址,但總是舊產品仍在購物籃中。

+0

您可能會得到更好的答案對超級用戶這個問題。com – 2011-04-20 11:28:38

+0

Internet Explorer在清除Cookie方面存在問題,只是使用其他瀏覽器,如Firefox或Chrome來達到此目的。 – 2011-04-20 11:42:00

+0

他正在談論通過使用WatiN的IE進行自動化測試,因此,手動或使用其他瀏覽器做事情不會是一種選擇。 (雖然你可以用WatiN使用FireFox)。 – 2011-04-20 14:33:49

回答

0

確保您正確關閉瀏覽器(即關閉其所有選項卡和窗口,包括下載等) - 查看任務管理器以查看它是否仍在運行。會話可能不是基於cookie的(例如,它可以在處理請求的同一個進程中跟蹤),並且清除瀏覽器緩存不會以任何方式影響打開的會話。

假設您正在開發一個asp.net應用程序或網站,您可以嘗試右鍵單擊系統托盤中的ASP.NET Development Server圖標並停止它,然後重新運行您的項目。這應該會殺死所有會話。

0

我們在這裏有同樣的問題。 IE在所有瀏覽器實例上重新使用會話。如果你想要一個新的會話只是做:

Alt鍵(菜單) - >文件 - >新建會話

檢查this blog for more info

+1

此答案如何幫助自動化WatiN腳本? – 2011-05-10 17:54:54

+0

我剛剛測試過這個,它不清楚存在cookies等,只是打開一個新窗口 – 2012-05-29 21:21:52

0

會話由Cookie管理,您可以清除所有Cookie或僅爲相關站點。

嘗試搜索IE Clearing cookies

5

爲IE6-7你應該在一個新的進程啓動一個新的瀏覽器會話是這樣的:

var ie = new IE("yoururl", true); 

爲IE8-9你應該設置在沒有合併選項創建新的IE實例之前的設置類:

Settings.MakeNewIe8InstanceNoMerge = true; 
var ie = new IE("yoururl"); 
+0

我把這個設置行放在我的ClassInitialize方法中。 – CrazyPyro 2014-05-05 14:14:37

0

IE 9還有一種不清除所有cookie的方法。 如果您在IE 9的「選項」菜單中打開「清除Cookies」對話框,您會注意到第一個選項顯示「保留收藏夾網站數據」。離開這個不選中,你通常清除cookies,關閉瀏覽器應該工作。

讓我知道如果這能幫助,我想這應該做的伎倆;)

0

我將在華廷很快被嘗試這一點,但只是我的命令行開關測試,它看起來像我可以通過打開多個實例

iexplore.exe -private -nomerge 

並且每個實例都不會干擾其他實例。

這意味着它允許您在同一網站上使用不同登錄名登錄,並且它們不會互相干擾。

這需要進一步的驗證,但到目前爲止似乎工作。

更新:我發現這個舊補丁華廷,增加了隱私功能將華廷的lib,它不會出現目前處於釋放 - http://sourceforge.net/tracker/?func=detail&aid=3013950&group_id=167632&atid=843730

+0

如果你添加到你的watin代碼中,一定要使用> =版本8,而不是== 8版本...所以它會支持ver 9 plus。 – 2012-05-30 01:11:24