主题检测是Shopline提供的一个自动化测试能力,帮助卖家检测核心交易流程是否存在功能问题。主题检测能检测出由于店铺装修带来的影响交易流程的问题。
1.如何触发主题检测
2.如何查看检测结果
3.检测覆盖的场景
4.检测的逻辑
1.如何触发主题检测
通过【应用】> 【自定义代码】创建、更新自定义代码后,若一段时间内不再对自定义代码作出改动,则自动触发主题检测。
2.如何查看检测结果
若检测不通过,通过【首页】可查看主题检测报告;
报告将保存一个月,超过一个月后将自动删除。
3.检测覆盖的场景
覆盖的检测页面
商品详情页
结账页
支付页
购物车页
覆盖的检测流程
目前会覆盖交易主链路的流程,如下:
1、商品详情页点击“立即购买”到结账页,判断是否跳转成功。
2、结账页填写所需信息,跳转到支付页。
3、点击支付生成系统测试订单或者调起第三方支付。
4、商品详情页点击“加入购物车”到购物车页。
5、购物车页点击“结账”,跳转到支付页。
4.检测的逻辑
检测原理
该流程检测是基于selenium,通过官方主题中规范化的class名称来找到对应元素,并进行点击、输入、断言等操作,来完成主流程检测。
检测步骤
1、打开商品详情页,判断是否存在“立即购买”按钮,否则判断是否存在“更多支付选项”按钮,否则判断是否存在“Paypal”支付按钮,都不存在则表示商品详情页没有支付相关按钮,截图并终止检测;只要存在一个,则进入下一步。
2、检查上一步中存在的按钮是否可点击,不可点击则截图并终止检测;可点击则点击并进入下一步。
3、检查是否存在“联系方式”表单,不存在则表示未跳转到结账页,截图并终止检测;存在则输入联系邮箱,并进入下一步。
4、检查当前是一页结账还是标准结账,记录信息并进入下一步;
5、检查是否存在可输入的“发货地址”表单,表单存在则输入收货信息,并在firstname/name中输入用于订单打标的“【系统测试订单】”;表单不存在则进入下一步。
6、根据第4步检测信息:如果是标准结账,检查是否存在“前往选物流”或者“前往选支付方式”;按钮不存在则截图并终止检测;按钮存在则进入下一步;如果是一页结账,直接跳到第10步。
7、检查上一步中存在的按钮是否可点击,不可点击则截图并终止检测;可点击则点击并进入下一步。
8、检查当前是否在第二页结账,是则判断是否存在“前往选支付方式”按钮,按钮不存在则截图并终止检测;按钮存在则进入下一步。
9、检查“前往选支付方式”按钮是否可点击,不可点击则截图并终止检测;可点击则点击并进入下一步。
10、检查是否存在“附加信息”表单,存在则输入附加信息并进入下一步;不存在则直接进入下一步。
11、检查是否存在“账单信息”表单,存在则输入账单信息并进入下一步;不存在则直接进入下一步。
12、检查是否存在“完成订单”按钮,存在则进入下一步了;不存在则直接跳到第16步。
13、检查上一步中存在的按钮是否可点击,可点击则点击并进入下一步;不可点击则直接跳到第16步。
14、检查是否生成订单,是则直接跳到第18步;否则说明可能是第三方支付方式,进入下一步;
15、检查是否有输入卡号的提示,是则直接跳到第18步;否则说明第三方支付接入异常,截图并终止检测。
16、检查是否存在“Paypal支付”按钮,是则进入下一步;否则说明所有结账按钮都不可用,截图并终止检测。
17、检查是否生成订单,并是否吊起Paypal支付页面,是则直接跳到第18步,否则说明paypal支付失败,截图并终止检测。
18、新打开商品详情页,判断是否存在“加入购物车”按钮,否则截图并终止检测;是则进入下一步。
19、检查“加入购物车”按钮是否可点击,不可点击则截图并终止检测;可点击则点击并进入下一步。
20、检查是否存在“结账”按钮,否则截图并终止检测;是则进入下一步。
21、检查“结账”按钮否可点击,不可点击则截图并终止检测;可点击则点击并进入下一步。
22、检查是否存在“联系方式”表单,不存在则表示未跳转到结账页,截图并终止检测;存在则检测结束,全部通过。
检测点
商品详情页
通过class中的shopline-element-buy-now,判断是否有“立即购买”按钮,用于点击跳到结账页。
通过class中的shopline-element-add-to-cart,判断是否有“加入购物车”按钮,用于点击跳到购物车页。
通过class中的product-more-payment-button,判断是否有“更多支付选项”按钮,用于点击跳到结账页。
结账页
通过class中的shopline-element-checkout-contact-info-form,判断是否有“联系方式”表单,用于判断是否成功跳转结账页的依据,也用于填写联系方式。
通过class中的shopline-element-checkout-shipment-address-form,判断是否有“发货地址”表单,也用于填写收件信息。
通过class中的shopline-element-checkout-shipment-address-form-firstName,判断“发货地址”中收件人firstname表单,如果存在此表单,会输入“【系统测试订单】”,用于标记流程检测生成的订单。
通过class中的shopline-element-checkout-shipment-address-form-name,判断“发货地址”中收件人name表单,如果存在此表单,会输入”【系统测试订单】“,用于标记流程检测生成的订单。
通过class中的shopline-element-checkout-complete-button,判断是否有“下一步/完成订单”按钮,用于标准样式/单页样式结账时,点击“前往选物流”或者“前往选支付方式”或者“完成订单”。
通过class中的shopline-element-checkout-paypal-button,判断是否有“Paypal支付”按钮,用于点击paypal结账。
通过class中的shopline-element-checkout-billing-address-form,判断是否有“账单信息”表单,用于输入账单信息。
通过class中的shopline-element-checkout-additional-info-form,判断是否有“附加信息”表单,用于输入附加信息。
购物车页
通过class中的shopline-element-cart-checkout,判断是否有‘结账’按钮,用于点击结账。
注意事项
若出现以下情况,检测会在商详页失败,并提示“立即购买”按钮不可用:
1、店铺设置了密码。
2、店铺打烊。
3、商品为询盘商品。
* 如有SHOPLINE功能使用感受或需求建议,快点击【功能反馈】告诉我们吧!
评论