2016-07-29 66 views
1

我正在使用Selenium Webdriver,並且我想驗證所有內容都已在瀏覽器中加載(Chrome會發生這種情況)。瀏覽器主窗口將有1​​0個或更多的對象加載(每個對象都在自己的iframe中)。我想盡快確定每個對象已經加載,然後繼續進行其餘的測試。是否可以使用C#的Parallel.foreach結構來加快速度,還是必須進行系列檢查。我可以在Selenium Webdriver中使用並行對象識別

Parallel.ForEach(loop, f=> 
{ 
    try 
    { 
     _customObject.MethodCheckingForAnIWebElement(f, AnArrayWithSomeInfo[f]); 
    } 
    catch (Exception e) { Console.WriteLine("Throw:" + f + ":" + e.Message); } 
}); 

上面的代碼段拋出F-1 元素沒有連接到頁面對象錯誤,這是讓我覺得我不能做到這一點的方法。 需要明確的是,每次通話,我會做這樣的事情

_webDriver.SwitchTo().Frame(aFrame) 
_webDriver.FindElement(By.CssSelector(some.property)); 

道歉,如果我錯過了這方面的一些明顯的文檔!

+0

答案似乎是否定的。 :) – SlightlyKosumi

回答

-1

答案看起來像我懷疑的那樣,在Selenium WebDriver的線程模型中我們不能並行處理。因此一致的附件錯誤。另見Can Selenium use multi threading in one browser?

+0

請使用您問題上的編輯鏈接添加其他信息。後回答按鈕應該只用於問題的完整答案。 - [來自評論](/ review/low-quality-posts/14112736) – VDWWD

+0

感謝您的評論。你如何看待我的答案可能更完整? – SlightlyKosumi

+0

答案很短,沒有代碼。它可能是你的問題的更新。 – VDWWD

相關問題