AEM提供自動化AEM UI測試的架構。 使用架構,您可直接在網頁瀏覽器中編寫並執行UI測試。 架構提供建立測試的javascript API。
AEM測試架構使用Hobbes.js,此為以Javascript撰寫的測試程式庫。 Hobbes.js架構是做為開發程式的一部份,用於測試AEM。 此架構現已可供公開使用,以測試您的AEM應用程式。
如需API的完整詳細資訊,請參閱Hobbes.js 檔案。
在AEM中使用自動測試時,下列術語很重要,請務必瞭解:
動作 | Action是網頁上的特定活動,例如按一下連結或按鈕。 |
測試案例 | 測試案例是由一個或多個動作組成的特定情況。 |
測試套件 | A 測試套件是一組相關的測試案例,可一起測試特定使用案例。 |
開啟測試主控台,以查看已註冊的測試套裝。 「測試」面板包含測試套裝及其測試案例的清單。
透過全域導覽->工具>作業->測試導覽至工具主控台。
當開啟主控台時,測試套裝會列在左側,並提供依序執行所有測試套裝的選項。 右方空格以方格背景顯示,是在測試執行時顯示頁面內容的預留位置。
測試套裝可個別執行。 當您執行測試套裝時,頁面會隨著測試案例及其動作的執行而變更,結果會在測試完成後顯示。 圖示表示結果。
複選標籤圖示表示通過的測試:
「X」圖示表示測試失敗:
若要執行測試套裝:
在「測試」面板中,按一下或點選您要執行的測試案例名稱,以展開動作的詳細資訊。
按一下或點選運行test按鈕。
測試執行時,預留位置會以頁面內容取代。
點選或按一下說明以開啟Result面板,以檢視測試案例的結果。 在Result面板中點選或按一下測試案例名稱,可顯示所有詳細資訊。
測試套裝會依其顯示在主控台中的順序執行。 您可以深入探究測試,以檢視詳細結果。
在「測試」面板上,點選或按一下您要執行之測試套裝標題下方的執行所有測試按鈕或執行測試按鈕。
若要檢視每個測試案例的結果,請點選或按一下測試案例的標題。 在Result面板中點選或按一下測試名稱會顯示所有詳細資料。
下列程式會逐步引導您使用We.Retail內容建立和執行測試套裝,但您可輕鬆修改測試以使用不同的網頁。
如需建立您自己測試套裝的完整詳細資訊,請參閱Hobbes.js API檔案。
開啟CRXDE Lite。 (http://localhost:4502/crx/de)
按一下右鍵/etc/clientlibs
資料夾,然後按一下建立>建立資料夾。 鍵入myTests
作為名稱,然後按一下OK。
按一下右鍵/etc/clientlibs/myTests
資料夾,然後按一下建立>建立節點。 使用下列屬性值,然後按一下OK:
myFirstTest
cq:ClientLibraryFolder
將下列屬性新增至myFirstTest節點:
名稱 | 類型 | 值 |
---|---|---|
categories |
String[] |
granite.testing.hobbes.tests |
dependencies |
String[] |
granite.testing.hobbes.testrunner |
僅限AEM Forms
若要測試最適化表單,請將下列值新增至類別和相依性。 例如:
類別: granite.testing.hobbes.tests, granite.testing.hobbes.af.commons
相依性: granite.testing.hobbes.testrunner, granite.testing.hobbes.af
按一下保存全部。
按一下右鍵myFirstTest
節點,然後按一下建立>建立檔案。 命名檔案js.txt
並按一下確定。
在js.txt
檔案中,輸入以下文本:
#base=.
myTestSuite.js
按一下「全部儲存」,然後關閉檔案。js.txt
按一下右鍵myFirstTest
節點,然後按一下建立>建立檔案。 命名檔案myTestSuite.js
並按一下確定。
將下列程式碼複製到myTestSuite.js
檔案,然後儲存檔案:
new hobs.TestSuite("Experience Content Test Suite", {path:"/etc/clientlibs/myTests/myFirstTest/myTestSuite.js"})
.addTestCase(new hobs.TestCase("Navigate to Experience Content")
.navigateTo("/content/we-retail/us/en/experience/arctic-surfing-in-lofoten.html")
)
.addTestCase(new hobs.TestCase("Hover Over Topnav")
.mouseover("li.visible-xs")
)
.addTestCase(new hobs.TestCase("Click Topnav Link")
.click("li.active a")
);
導覽至Testing主控台以試用您的測試套裝。