2016-05-13 95 views
0

是一樣的我需要爲我的IE運行我的Selenium Python測試腳本。
如果我使用無頭瀏覽器PhantomJS運行它,它會不同於運行它的IE瀏覽器?Selenium PhantomJS與運行IE

我在問,因爲我在從任務計劃程序的批處理文件運行我的Selenium Python測試腳本時出現問題。 我可以運行自己的批處理文件,並且運行正常。但是,當我從任務計劃程序運行它的瀏覽器不會打開,因此測試失敗。開發人員說,Task Scheduler在無頭瀏覽器的後臺運行。 如果我使用PhantomJS,它將不會像IE一樣? 我需要使用IE對其進行測試,但運行我的Selenium測試的批處理文件不會從任務計劃程序打開瀏覽器。

我的批處理文件如下:

set TEST_HOME=%~dp0 
cd %~dp0 

SET PATH=%PATH%;G:\test_runners\selenium_regression_test_5_1_1\IEDriverServer\64bit 

cd %~dp0selenium_regression_test_5_1_1 

set PYTHONPATH=%~dp0selenium_regression_test_5_1_1 

c:\Python27\Scripts\nosetests.exe "%~dp0selenium_regression_test_5_1_1\Regression_TestCase\split_into_parts\RegressionProject_TestCase_Part1.py" --with-html --html-file="%~dp0selenium_regression_test_5_1_1\TestReport\SeleniumTestReport_part1.html" 

我很欣賞一些這方面的幫助。 謝謝,里亞茲

回答

0

這就和詢問一樣,是在IE和Firefox的輸出相同嗎?不完全一樣,它在外觀上看起來相同,但在源代碼中,一些元素適用於您正在使用的瀏覽器。

Phantomjs本身就是一個瀏覽器,所以一些元素可以隱藏甚至不能加載,但很少見。 Twitter就是一個很好的例子。我注意到在一些測試中,點擊twit盒子寫一些文本的行爲在phantomjs中的表現與其他瀏覽器的行爲不同!

任務調度程序不允許使用IE的原因是因爲在進程的生命週期中不能使用任何圖形環境。

+1

我設法讓Selenium瀏覽器IE在Task Scheduler中打開。在任務計劃程序中運行該任務爲隱藏設置單選按鈕「僅在用戶登錄時運行」應該被選中。 當批處理文件運行時,瀏覽器會打開Selenium測試。 許多用戶都遇到過這個問題:我從這裏找到了解決方案:http://answers.microsoft.com/en-us/windows/forum/windows_7-performance/why-is-a-windows-7-scheduled-任務運行隱藏/ d5196c53-5ebd-40a9-8180-d97bde69d060?auth = 1 –

+0

無論是否工作或如果你想要做什麼都可以用幻影完成,我會使用它。它更快。 –