我正在運行一個場景,其中表單域被自動填入無效值,當我模糊時,會觸發某些javascripts在每個錯誤填充字段下顯示警告。 當瀏覽器處於焦點時,測試通過。它找到了我通過的「預期警告」的xpath。但是,如果我最小化或只是點擊另一個應用程序,它無法找到xpath。當瀏覽器被最小化時,水豚黃瓜測試未能找到xpath
我運行Firefox 3.6(馬上就要更新)和我做找到的XPath的方法是使用「page.should have_xpath(的XPath)」
沒有人有任何想法如何什麼可以解決這個問題使瀏覽器最小化運行對我來說非常重要。
編輯和替代解決方案:
我想這發生在事件如模糊,接着在固有的驅動程序本身最小化的瀏覽器找到特定的xpath的定時問題。因此,我決定在Linux中使用xvfb在虛擬幀緩衝區中運行測試,並且它似乎工作得很好。我打算將這個由Hudson/Jenkins在發生變化時觸發。
爲什麼在網絡自動化運行時您會與瀏覽器進行交互?這些測試應該留給自己,最好是自動化的,這樣不會意外地改變相互作用。 – Oded
我沒有與它互動。當我實際上意味着瀏覽器自行完成時,您可能會錯過閱讀「當我模糊」。問題是,當我在開發機器上開發場景時,我希望能夠繼續開發。瀏覽器不是所選程序的事實不應該妨礙Capybara試圖在頁面上找到xpath。除了page.should have_xpath(xpath)之外,它適用於其他所有東西。 – chiurox