[英]Spring test context setup without SpringJUnit4ClassRunner or AbstractJUnit4SpringContextTests (in Selenium testing)
我正在使用Selenium 1.x和Spring 3.0設置JUnit 4.7測試。
我想擴展Selenium的SeleneseTestCase
以獲得它提供的快捷方式和約定(更重要的是,Selenium IDE生成的代碼似乎期待這一點)。 然而,我希望在執行過程中出現Spring上下文和其他好處。
因為我無法擴展Spring的AbstractJUnit4SpringContextTests
,所以我嘗試使用@RunWith(SpringJUnit4ClassRunner.class)
裝飾我的測試用例。 這成功地設置了Spring,但在Selenium執行中引起了一些奇怪的問題:例如,測試執行緩慢,瀏覽器窗口保持打開狀態。 我想它會覆蓋Selenium的某些部分(只是一個猜測)...不幸的是,基礎SeleneseTestCase
類只允許更改一組受限制的參數,例如設置執行速度,(讓我想知道,如果基類是那樣的話)畢竟很好......)。
據我所知,為了使Spring的所有花俏工作,我必須擴展AbstractJUnit4SpringContextTests
或用@RunWith(SpringJUnit4ClassRunner.class)
裝飾類。 但是,前者我不能,后者帶來問題。
只有@ContextConfiguration
會加載上下文,但至少依賴注入不起作用。 那就是我停下來的地方。
如何使用Selenium(或具有相同案例的任何其他庫)整齊地初始化Spring?
編輯:使文本更具可讀性。
我被一個類似的問題所困擾,足以編寫一個MethodRule實現,它將加載一個Spring上下文並自動裝配它的主機測試 。 也許這是你正在尋找的開始。
它允許你做這樣的事情:
@Rule
public TemporarySpringContext context = new TemporarySpringContext("context.xml");
@Autowired
MyService myServiceBean;
如果您有任何改進,請告訴我。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.