我以前寫過一些使用ruby/rspec的硒測試,並發現它相當強大。現在,我使用Selenium和PHPUnit,並且有一些我錯過的東西,可能僅僅是因爲缺乏經驗。在Ruby/RSpec中,我習慣於能夠爲每個測試用例定義一個「全局」設置,其中包括打開瀏覽器窗口並登錄到我的網站。瀏覽器會話在setUp(),tearDown(),沒有每個測試用例設置?
我覺得PHPUnit的是有點欠缺這裏,因爲1)你只有setUp()
和tearDown()
,其中前和每個單獨測試後運行,並且2)似乎是實際的瀏覽器會話建立之間setUp()
並進行測試,並在tearDown()
之前關閉。
這使得在測試自己多一點混亂,因爲你必須明確地在開始打開頁面,並在年底進行清理。在每一個測試中。這似乎是不必要的開銷,關閉並重新打開瀏覽器的每一個測試,而不是隻是回到目標網頁。
有沒有其他的方法來實現我在找什麼?
不知道這是你在找什麼,但PHPUnit的並不只提供'setup'和'tearDown'也是其他方法了一堆,可用於設置你的測試的全局狀態。請參閱[PHPUnit手冊中的Fixtures]一章(http://www.phpunit.de/manual/3.6/en/fixtures.html)。請說明這是你正在尋找與否。 – Gordon 2011-03-31 08:27:37