我需要做的是爲我們的應用程序創建UI測試用例,並且我們決定使用Selenium和TestNG(如果有相當多的優點,我們仍然對其他選項開放)。如何使用TestNG創建多用戶測試場景?
我們試圖創建的測試是測試,其中多個用戶使用應用程序相互交互。基本上我們需要有多個用戶並行登錄到我們的應用程序並執行不同的操作。用戶的行爲之間存在關聯,所以他們需要在某些點上同步他們的交互(例如,用戶需要等待不同的用戶執行某個動作之後才能執行他的動作)。這意味着用戶之間還需要有某種共享信息(我只是在考慮共享一個可以處理同步點的對象)。
我該如何構建我需要描述將使用TestNG並行運行的不同用戶的操作的場景?
有沒有更好的框架或有沒有解決這個問題的模式?任何suggestios都歡迎!謝謝。
編輯:
我可以迄今的事情,最好是創建一個測試,其中每個@Test
方法有每個用戶的操作,然後創建一個套房,我定義的測試方法應並行運行。例如:
public class MultiUserTest {
@Test
public void user1Interaction() {
User user1 = new User();
// user1 performs actions
}
@Test
public void user2Interaction() {
User user2 = new User();
// user2 performs actions
}
}
然後創建一個測試套件,我指定的MultiUserTest
的方法應該並行運行。
但是我不太喜歡這個解決方案。我不喜歡這樣一個事實,即我依靠XML配置(測試套件)來描述測試的正確行爲(通過查看java代碼,這不會很明顯)。我也不喜歡這樣一個事實,即我無法通過在Eclipse上使用TestNG插件通過「Run As - TestNG Test」運行測試。再次,任何建議是非常受歡迎的。謝謝!
感謝您的建議,但是,我一直在尋找一個解決方案,我可以利用一些TestNG的功能,這將幫助我在一個更簡單和更清潔的方式編寫這些測試。 –