Katalon自动化测试project结构图
其中commen-》action, pagecontol
testcase->function test case
utility->method
1.在profile中定义需要用到的常用参数,配置文件
2.在object repository中定义页面元素,按页面及form拆分建议文件夹
3.Action 的test case中定义操作元素的方法,并定义 变量
if(!CustomKeywords.'com.ashford.method.Operation.isEmpty'(Country)) WebUI.selectOptionByValue(findTestObject('Common/Checkout/Payment Option/Billing Address/Billing Address - Country Name'), Country, false) WebUI.delay(2) WebUI.sendKeys(findTestObject('Common/Checkout/Payment Option/Billing Address/Billing Address - First Name'), FirstName) |
4.在Method中调用相应的action
WebUI.callTestCase(findTestCase('Common Test Case/Status Check/Page Control - Current Location/Is Checkout Shipping Page'), [:], FailureHandling.STOP_ON_FAILURE) if (CustomKeywords.'com.ashford.method.Operation.convertY'(UseDefaultAddress)) { CustomKeywords.'com.ashford.global.Constant.getDebugMessageLabel'('Using default shipping address.') } else { WebUI.callTestCase(findTestCase('Common Test Case/Checkout/Shipping Address/Input Shipping Address'), [('CountryName') : CountryName , ('FirstName') : FirstName, ('LastName') : LastName, ('StreetAddress1') : Address1, ('StreetAddress2') : Address2 , ('City') : City, ('State') : State, ('ZipCode') : ZipCode, ('PhoneNumber') : Phone1, ('OtherPhone') : Phone2 , ('EmailAddress') : EmailAddress, ('District') : District, ('TestSite') : TestSite], FailureHandling.STOP_ON_FAILURE) if (EmailAddress!="Generate") { WebUI.callTestCase(findTestCase('Common Test Case/Checkout/Shipping Address/Next Step From Shipping Address'), [:], FailureHandling.STOP_ON_FAILURE) } } |
5.在case中调用方法完成测试用例
WebUI.callTestCase(findTestCase('Utility/Home Page/Enter Home Page'), [('SiteURL') : SiteURL], FailureHandling.STOP_ON_FAILURE) WebUI.callTestCase(findTestCase('Utility/PDP/Add to Cart from PDP By Search ID'), [('ProductID') : ProductID, ('Size') : Size , ('Qty') : QTY], FailureHandling.STOP_ON_FAILURE) WebUI.callTestCase(findTestCase('Utility/Shopping Cart/Shopping Cart to Checkout Flow'), [('IsGuestUser') : IsGuestCheckout,('HostURL') : SiteURL], FailureHandling.STOP_ON_FAILURE) WebUI.callTestCase(findTestCase('Utility/Checkout/Checkout Shipping/Input Checkout Shipping Address'), [('UseDefaultAddress') : UseDefaultAddress , ('EmailAddress') : EmailAddress, ('CountryName') : Country, ('FirstName') : FirstName, ('LastName') : LastName , ('State') : State, ('City') : City, ('District') : District, ('Address1') : Address1, ('Address2') : Address2, ('ZipCode') : ZipCode , ('Phone1') : Phone1, ('TestSite') : Site], FailureHandling.STOP_ON_FAILURE) WebUI.callTestCase(findTestCase('Utility/Checkout/Checkout Shipping/Select Checkout Shipping Method'), [('ShippingMethodID') : ShippingMethodID , ('CitizenId') : CitizenID], FailureHandling.STOP_ON_FAILURE) WebUI.callTestCase(findTestCase('Utility/Checkout/Checkout Payment/Input checkout billing info and Click Submit'), [('PayBy') : PayBy , ('CardNumber') : CardNumber, ('Month') : Month, ('Year') : Year, ('CVV') : CVV, ('SameAsShipping') : SameAsShipping, ('Site') : Site, ('Country') : BD_Country , ('FirstName') : BD_FirstName, ('LastName') : BD_LastName, ('State') : BD_State, ('City') : BD_City, ('District') : BD_District , ('Address1') : BD_Address1, ('Address2') : BD_Address2, ('ZipCode') : BD_Zip, ('Phone1') : BD_Phone1], FailureHandling.STOP_ON_FAILURE) |