[网页UI]使用记录和回放功能创建和运行网页UI测试用例
本教程演示了如何用Katalon Studio使用 记录 和 回放功能创建网页UI测试用例。
通过场景“登录购物页面购买小背心”来熟悉这些功能。基本步骤是:
- 创建一个新项目来存储记录的操作。
- 与网页交互。
- 登录。
- 买一件背心。
- 停止录制并保存脚本。
创建并运行您的第一个网页UI测试用例
创建新项目
-
在侧边栏的 测试资源管理器 中 > 点击新建项目。
-
在显示的 新建项目 对话框中:
-
输入项目名称。
-
在项目 类型 中,选择 网页。
-
在项目中,选择样本网页UI...(购物车), 存储库URL会自动填充。
-
浏览 位置 以存储您的项目 > 点击确定。
-
录制
-
在主工具栏中,单击 网页录制功能 图标以打开 Web Recorder。
-
在显示的Web Recorder中:
-
选择浏览器开始录制(推荐使用 Chrome)。
-
-
等待浏览器启动,并准备进行交互。
悬停一个元素时,浏览器会在页面顶部突出显示该元素的对应XPath。
提示:您可以使用热键来捕获对象(按
的组合)。捕获的对象将以绿色边框突出显示。 -
与网页交互。在这种情况下,我们将登录并购买背心。
在录制过程中,Katalon Web Recorder 会捕获您与之交互的所有对象。当您输入 密码 字段时,Katalon Web Recorder 会自动使用“设置加密文本”关键字。此输入值将被加密以确保安全。
-
一旦您完成购买 > 点击 保存脚本 停止录制并保存捕获的对象。Katalon Web Recorder 会导出测试用例中使用的对象列表。
创建一个新文件夹或在 目标存储库 中选择一个现有文件夹 > 点击 OK。
Katalon Studio 允许您使用现有测试用例继续录制,以减少修改该用例时的工作量。了解更多
回放
回放录制的场景:
-
选择有保存记录操作的测试用例。
-
在主工具栏中,选择运行旁边下拉列表中的任意浏览器。
Katalon Studio将使用记录的步骤相应地执行所选择的测试用例。
在脚本模式中查看测试用例
import static com.kms.katalon.core.checkpoint.CheckpointFactory.findCheckpoint
import static com.kms.katalon.core.testcase.TestCaseFactory.findTestCase
import static com.kms.katalon.core.testdata.TestDataFactory.findTestData
import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject
import static com.kms.katalon.core.testobject.ObjectRepository.findWindowsObject
import com.kms.katalon.core.checkpoint.Checkpoint as Checkpoint
import com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords as CucumberKW
import com.kms.katalon.core.mobile.keyword.MobileBuiltInKeywords as Mobile
import com.kms.katalon.core.model.FailureHandling as FailureHandling
import com.kms.katalon.core.testcase.TestCase as TestCase
import com.kms.katalon.core.testdata.TestData as TestData
import com.kms.katalon.core.testng.keyword.TestNGBuiltinKeywords as TestNGKW
import com.kms.katalon.core.testobject.TestObject as TestObject
import com.kms.katalon.core.webservice.keyword.WSBuiltInKeywords as WS
import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI
import com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords as Windows
import internal.GlobalVariable as GlobalVariable
import org.openqa.selenium.Keys as Keys
WebUI.openBrowser('')
WebUI.navigateToUrl('https://demo-store.katalon.com/')
WebUI.click(findTestObject('Object Repository/shoppingCart/Page_Zack Market/svg_Zack Market_svg-inline--fa fa-user fa-w-14'))
WebUI.setText(findTestObject('Object Repository/shoppingCart/Page_Zack Market/input_Email_email'), 'thuy.ngo@katalon.com')
WebUI.setEncryptedText(findTestObject('Object Repository/shoppingCart/Page_Zack Market/input_Password_password'), 'GklqZBguAPQ=')
WebUI.click(findTestObject('Object Repository/shoppingCart/Page_Zack Market/input_Password_button_btn__2lzmo'))
WebUI.click(findTestObject('Object Repository/shoppingCart/Page_Zack Market/div_All Products_search_auto__TZ-uB'))
WebUI.setText(findTestObject('Object Repository/shoppingCart/Page_Zack Market/input_All Products_auto_input__2ud9e'), 'tank top')
WebUI.click(findTestObject('Object Repository/shoppingCart/Page_Zack Market/span_Tank Top'))
WebUI.click(findTestObject('Object Repository/shoppingCart/Page_Zack Market/img_Clear All_card-img-top'))
WebUI.click(findTestObject('Object Repository/shoppingCart/Page_Zack Market/img'))
WebUI.click(findTestObject('Object Repository/shoppingCart/Page_Zack Market/span_Buy Now'))
WebUI.click(findTestObject('Object Repository/shoppingCart/Page_Zack Market/span_Confirm checkout'))
WebUI.closeBrowser()