2017-02-14 43 views
1

我有一種情況,我需要測試多個用戶訪問和更新特定的網頁。它是一個拍賣頁面,我需要測試多達三位用戶對該項目的出價,並斷言瀏覽器會顯示正確的回覆。有多個用戶的驗收測試頁面

例如:

  • 用戶1登錄在
  • 用戶2名登錄在
  • 用戶3名登錄在
  • 用戶1周的出價 - 正在贏得
  • 用戶2個出價 - 正在贏得 - 用戶1出價過高並得到通知
  • 用戶3出價但不夠用
  • 用戶3 bi ds再次獲勝 - 用戶1和用戶2出高價通知

目前我有一組腳本按順序執行這些步驟,每次進行出價時都會記錄每個用戶的進出。 m使用PHP和Codeception與PhantomJS來做到這一點,但測試需要幾分鐘的時間來運行。

我在尋找的建議上

  1. 來測試這一點的最好辦法,而
  2. 工具,可以實現並行測試的用戶。

回答

2

第一件事是第一件事。 UI測試本身就很慢。我認爲你不可能期望在這條道路上的表現大幅提升。

當然,你可以在更快的機器上運行你的測試,具有更好的互聯網連接,但這隻會帶你到目前爲止。

話雖如此,性能改進的一種類型是並行運行您的UI測試。這意味着您的計算機上有多個瀏覽器實例(但同樣,您的計算機的資源有物理限制),或者在中心協調器運行測試的多個節點上(例如,查看Selenium Grid)。

在另一方面,在我看來,解決這一問題的最佳途徑,是完全跳過UI測試和移動所有你想在服務器端代碼級測試業務邏輯。這樣,你可以專注於編寫測試你的業務邏輯的測試 - 我認爲這是最重要的(我希望你的利益相關者分享這個觀點 - 這是關鍵)。

關於這種方法的更多細節,我建議看看這個談話Clean Architecture。這是一個小時,但它是值得的!

+0

我確實對業務邏輯進行了集成和單元測試。我需要測試/模擬的是一個'實時'拍賣,並且測試界面是否符合預期。 – Euperia