我有一個使用Grails編寫的相當複雜的Web應用程序。我試圖建立一個功能測試框架,最初使用Selenium,但遇到了兩個問題。什麼是複雜網絡應用程序功能測試的最佳工具
我想測試的頁面的一部分涉及使用jstree顯示的樹狀數據結構。這裏的問題是,我希望模擬的動作 - 用戶點擊節點以顯示其子節點 - 似乎是通過點擊div內的特定座標觸發的,這很難測試。我設法解決了這個問題,通過使用由Selenium的executeScript()方法直接傳遞給瀏覽器的Javascript打開這個節點。
該webapp大量使用文件上傳,這是我絕對需要測試的東西。使用Selenium提交文件上傳沒有直接的方法。
這樣做的最好方法是什麼?我正在考慮嘗試Tellurium(但從我的閱讀文檔上傳是否正常工作)或iMacros(假設瀏覽器擴展將更好地處理文件上傳)並不清楚。這不是我所處的罕見情況;任何人都可以提出更好的選擇嗎?
我們使用功能測試插件,只是模擬web請求,而不涉及瀏覽器。它可能會簡化一些事情。 – 2011-05-10 15:48:15
能夠使用HTMLUnit進行測試肯定會很好。但不幸的是,我們發現很難在沒有實際啓動瀏覽器的情況下測試一些豐富的UI內容,而且我們確實希望將所有測試保留在一個框架下。 – mojones 2011-05-12 09:10:38
它與集成測試沒有多大差別。我相信你有Grails單元和集成測試,所以在這裏幾乎沒有基礎設施開銷。只是清楚地分開,什麼是用來做什麼的。當然,'functional-test'永遠不會讓你測試瀏覽器端的邏輯。 – 2011-05-12 09:17:07