錄製回放模式建立測試用例 - Katalon Studio

weixin_33807284發表於2018-07-30

對於自動化測試菜鳥來說,開始學習自動化最簡單的方法是測試錄製。識別應用系統上的物件是一件費時且痛苦的事情。Web Recorder Utility(網頁錄製功能) 捕獲你在應用系統上的操作行為並且在後臺把它們轉化為可執行的程式碼。使用這個功能,你可以很快對應用系統的一些功能進行自動化,對於那些需要在迭代構建中重複執行多次的動作,通過錄制可以節省時間。Katalon Studio 的這個功能支援錄製測試用例,並可在多種瀏覽器中回放。這篇文章將向你展示如何輕鬆地錄製測試用例。

  1. 使用Katalon Studio 錄製網頁功能錄製你的第一個測試用例。
  2. 實時錄製時如何改變頁面資料夾和元素名字。
  3. 錄製時如何新增Katalon命令

1.使用Katalon Studio 錄製網頁功能錄製你的第一個測試用例 場景:  預定

  1. 開啟被測系 (URLhttp://demoaut.katalon.com/)
  2. 點選預定按鍵
  3. 輸入有效的使用者名稱、密碼並點選登入按鍵
  4. 預定

跟隨以下步驟,熟悉網站介面測試中的錄製&回放功能 步驟 1: 開啟 Katalon Studio 並點選主工具欄上的 新建 > 測試用例。 輸入測試用例名字並點確定. 一個空的測試用例就建立好了。 步驟 2: 在主工具欄上點選 Record Web (錄製網頁) 步驟 3:錄製對話方塊就顯示出來了。 步驟4:選擇瀏覽器並點選錄製按鍵開始錄製測試用例。 步驟 5: 在你的系統開啟之後, 把滑鼠移到 ‘Make Appointment’(預定) 按鍵上並點選(等待登入頁面載入完畢) 步驟 6:輸入有效的使用者名稱&密碼 (John Doe & ThisIsNotAPassword) 並點選‘Login‘ 按鍵 (等待頁面載入完畢) 步驟7: 預定頁面載入完成後,在Facility下拉框中選擇值 “Hongkong CURA Healthcare Center” 步驟 8:把滑鼠移動到 ‘Apply for hospital readmission‘勾選框並點選。 步驟9:把滑鼠移動到‘Medicaid’單選框並點選。 步驟10:點選‘Visit Date’(預約日期)的日曆圖示並點選所需的日期。 步驟11: 把滑鼠移動到備註區並輸入文字。 步驟12:把滑鼠移動到 Book Appointment(預約)按鍵並點選。 步驟13:你可以隨時點‘Stop‘停止錄製。 Katalon Studio 允許使用者對所捕獲的物件選擇‘定位模式’。對於剛開始自動化之旅的手動測試員,我們推薦使用Basic mode(基本模式)。基本模式下Katalon Studio的智慧定位器生成器會自動為每個捕獲的物件生成可靠並唯一的定位器。 對於希望手動輸入定位器的高階測試員,可以選擇CSS 或 XPath 模式。關於定位方法的更多細節可以參考guide(指南)。 步驟14: 當完成錄製後,點選OK ,所有錄製下來的動作都會被儲存到Katalon Studio中去。 儲存過程中會提醒你把捕獲的物件都儲存到物件庫中去,這樣你可以隨時重用它們。你也可以根據自己的意願來建立儲存物件的資料夾結構。點選OK 繼續。 步驟15:記錄下來的物件和動作會象以下顯示的那樣儲存到測試用例中。 只需點選‘Run’(執行) 就可以在你期望的瀏覽器中執行記錄下來的測試用例。 記錄和回放的指令碼程式碼

  1. WebUI.openBrowser('')
  2. WebUI.navigateToUrl('https://demoaut.katalon.com/')</p>
  3. WebUI.click(findTestObject('Page_CURA Healthcare Service/a_Make Appointment'))
  4. WebUI.click(findTestObject('Page_CURA Healthcare Service (1)/button_Login'))
  5. WebUI.selectOptionByValue(findTestObject('Page_CURA Healthcare Service (2)/select_facility'), 'Hongkong CURA Healthcare Center',
  6. true)
  7. WebUI.click(findTestObject('Page_CURA Healthcare Service (2)/input_hospital_readmission'))
  8. WebUI.click(findTestObject('Page_CURA Healthcare Service (2)/input_programs'))
  9. WebUI.click(findTestObject('Page_CURA Healthcare Service (2)/div_input-group-addon'))
  10. WebUI.click(findTestObject('Page_CURA Healthcare Service (2)/td_3'))
  11. WebUI.setText(findTestObject('Page_CURA Healthcare Service (2)/textarea_comment'), 'Katalon')
  12. WebUI.click(findTestObject('Page_CURA Healthcare Service (2)/button_Book Appointment'))
  13. WebUI.closeBrowser()

2.錄製時如何實時更改頁面資料夾和元素的名字 為了在頁面物件模式下組織你的測試指令碼,我們需要把測試物件新增到與頁面對應的資料夾下。這樣做有助於重用及維護物件。 場景:  使用有效資料登入

  1. 開啟被測試系統 (URLhttp://demoaut.katalon.com/)。
  2. 點選預約按鍵 (改變頁面及物件名字)。
  3. 輸入有效的使用者名稱,密碼並點選登入按鍵。 (改變頁面及物件名字)。

步驟 1: 開啟 Katalon Studio 並點選主工具欄上的 First Test Case(首個測試用例)按鍵。輸入你的測試用例名字並點OK。一個空的測試用例就建立了 。 步驟2: 在主工具欄上點選 Record Web (錄製網頁) 步驟3: 錄製對話方塊就顯示出來了。選擇瀏覽器並點選錄製按鍵開始錄製測試用例。 步驟4: 在你的系統開啟之後, 把滑鼠移到 ‘Make Appointment’(預定) 按鍵上並點選(等待登入頁面載入完畢) 步驟5:把頁面名字從 “Page_CURA Healthcare Service” 改為 “Page_Home Page”。 步驟6:在捕獲的物件框架中選 “a_Make Appointment”元素。 步驟7把元素名字從“a_Make Appointment” 改為“button_Make Appointment”。 步驟8:切換到錄製瀏覽器,移動到Login 按鍵並點選它,以重新繼續錄製。 步驟9Repeat重複以下步驟,改變Login 物件及它的資料夾的名字。 步驟10:  “Page_CURA Healthcare Service” 頁面的名字改為 “Page_Login”。 步驟11: 你可以隨時點‘Stop‘停止錄製。當完成錄製後,點選OK ,所有錄製下來的動作都會被儲存到Katalon Studio中去。 步驟12: 儲存過程中會提醒你把捕獲的物件都儲存到物件庫中去,這樣你可以隨時重用它們。你也可以根據自己的意願來建立儲存物件的資料夾結構。點選OK 繼續。 步驟13: 記錄下來的物件和動作會象以下顯示的那樣儲存到測試用例中。 只需點選‘Run’(執行) 就可以在你期望的瀏覽器中執行記錄下來的測試用例。 原始碼:

  1. import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject</p>
  2. import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI
  3. WebUI.openBrowser('')
  4. WebUI.navigateToUrl('https://demoaut.katalon.com/')
  5. WebUI.click(findTestObject('Page_Home Page/button_Make Appointment'))
  6. WebUI.click(findTestObject('Page_Login/button_Login'))
  7. WebUI.closeBrowser()

3. 錄製時如何新增Katalon命令 場景:  使用validations(驗證命令) 驗證登入功能

  1. 開啟被測系(url: http://demoaut.katalon.com/)
  2. 驗證Make Appointment按鍵存在
  3. 點選Make Appointment按鍵
  4. 驗證Login按鍵可見
  5. 輸入有效的使用者名稱、密碼並點選登入按鍵

實時錄製時Katalon Studio允許使用者新增額外的命令,如基本動作命令,驗證點命令,集合命令。 步驟 1: 開啟 Katalon Studio並點選主工具欄上的 New Test Case(新建測試用例)按鍵。輸入測試用例名字並點選OK。 一個空的測試用例就建立了。 步驟2: 在主工具欄上點選 Record Web (錄製網頁) 步驟 3: 錄製對話方塊就顯示出來了。 步驟4: 選擇瀏覽器並點選錄製按鍵開始錄製測試用例。 步驟 5: 在你的系統開啟之後, 把滑鼠移到 ‘Make Appointment’(預定) 按鍵上並點選(等待登入頁面載入完畢) 步驟 6: 我們在實時錄製時可以新增驗證命令。切換到 Katalon 錄製對話方塊,找到需要在其下加入驗證命令的行,然後點選 Add 按鍵。 步驟 7:點選 Add Validation Point(新增驗證點) 步驟8:系統自動新增預設的命令:Verify Element Present(驗證元素存在) 步驟9:我們需要給 Verify Element Present 命令時間值,Katalon Studio 提供的預設時間是30秒。 點選 Verify Element Present的動作資料並設定成30秒 [根據你自己需要] 然後點選OK 按鍵。 步驟10: 圖示是在記錄對話方塊中帶有時間的 Verify Element Present 命令 步驟 11: 我們需要給 Verify Element Present 命令設定物件。點選Verify Element Present命令的元素欄,系統將顯示頁面物件對話方塊。選擇Login 按鍵物件 [根據你自己的需要] 並點選 OK 按鍵。 步驟 12: 示例顯示的是設定了物件的Verify Element Present命令 步驟 13:然後返回瀏覽器重新繼續錄製,移動滑鼠到Make Appointment按鍵並點選 Make Appointment 按鍵。 步驟 14: 我們切換回錄製對話方塊,新增Make Appointment按鍵的驗證命令。 步驟 15: 點選Add 按鍵,在顯示的命令下拉框中點選Add Validation point 步驟16:系統將新增預設的Verify Element Present命令。 步驟 17: 現在我們需要把Verify Element Present 命令改為 Verify Element Visible。 雙擊Verify Element Present命令的動作欄,然後會顯示向下箭頭。點選向下箭頭,將會顯示所有驗證命令。點選Verify Element Visible 命令 [或根據你自己的需要選擇其它的命令]。 步驟18: 系統將顯示修改了驗證點的錄製對話方塊。 步驟19:我們需要給 Verify Element Visible 命令設定物件。點選Verify Element Visible命令的元素欄,系統將顯示頁面物件對話方塊。展開頁面物件資料夾,選擇Login 按鍵物件 [根據你自己的需要] 並點選 OK 按鍵。 步驟20:系統將顯示修改了物件的Verify Element Visible命令。 步驟21: 你可以隨時點‘Stop‘停止錄製。當完成錄製時點選OK ,所有錄製的動作都會被儲存到Katalon Studio中。 步驟 22: 儲存過程中會提醒你把捕獲的物件都儲存到物件庫中去,這樣你可以隨時重用它們。你也可以根據自己的意願來建立儲存物件的資料夾結構。點選OK 繼續。 步驟23: 記錄下來的物件和動作會象以下顯示的那樣儲存到測試用例中。

  1. WebUI.openBrowser('')</p>
  2. WebUI.navigateToUrl('https://demoaut.katalon.com/')
  3. WebUI.verifyElementPresent(findTestObject('Page_CURA Healthcare Service/a_Make Appointment'), 30)
  4. WebUI.click(findTestObject('Page_CURA Healthcare Service/a_Make Appointment'))
  5. WebUI.verifyElementVisible(findTestObject('Page_CURA Healthcare Service (1)/button_Login'))
  6. WebUI.click(findTestObject('Page_CURA Healthcare Service (1)/button_Login'))
  7. WebUI.closeBrowser()

就這樣我們可以利用Katalon Studio錄製所操作的動作。也有少量動作錄製不下來。 不能錄製什麼? 雖然錄製測試可以節省時間,但有一些情況我們無法確定有效,例如:網頁表格處理,多框架切換,切換到視窗,影象識別,視訊播放。 下列是主要的缺憾: a)使用記錄器,我們無法處理動態變化的元素(因為需要客製化 Xpath/CSS) b)無法在任何需要的地方都重用程式碼。這對除錯工作是極大的挑戰。 Original source: https://www.katalon.com/resources-center/tutorials/create-test-case-using-record-playback/ Translated by: Junfeng Yan

相關文章