我正在使用Selenium客戶端驅動程序2.4.0。當使用WebDriverBackedSelenium對象運行測試時,例如Selenium:如何在我的測試中注入Javascript變量?
final FirefoxDriver driver = new FirefoxDriver();
selenium = new WebDriverBackedSelenium(driver, baseUrl);
我該如何在我的測試中注入一個Javascript數組,以保持跨不同頁面的範圍?也就是說,我想創建一個JS var「myArray」,當我打開「http://mydomain.com/page1.html」時我可以訪問它(使用selenium.getEval),但是當我打開一個不同的頁面時,我可以引用它(「http://mydomain.com/page2.html」)在同一個Selenium測試中。
謝謝, - 戴夫
我想轉換使用Selenium全局JS變量「storedVars」來存儲全局信息的Selenium HTML測試。可悲的是,這是不可用的WebDriverBackedSelenium驅動程序。感謝您的回覆,但我不明白您的回覆。請提供一個使用「getEval」設置和檢索全局變量的示例。謝謝, - – Dave
我直接使用WebDriver一段時間,所以我會提供ony這個「僞代碼」: String arrayJson =「[]」; selenium.getEval(「window.document.storedVars =」+ arrayJson) //做一些工作... // arrayJson = selenium.getEval(「window.dojo.toJson(window.document.storedVars)」) –
如果你遠離正在測試的頁面,「window.document.storedVars」是否仍然保留其價值?這不適合我,這就是問題所在。我正在尋找一個JS變量,將持續不同的頁面。 – Dave