今天在android项目中遇到一个问题,场景达人每天第一次接单时,会弹出提示框:每日完成订单配送后将扣取1元保险费,是否确认接单?,点击确定后,才能接单成功,并且只有每天第一次接单才会弹出
如下图
此处要判断当前的接单是不是第一次接单,如果是第一次接单,点击确定,如果不是第一次接单,在接单页面点击接单后,直接接单成功,思路:
用Run Keyword And Return Status关键字判断页面是否有提示框弹出,如果有提示框弹出,用Run Keyword关键字执行点击确定按钮操作。
具体实现如下,页面有弹出框时,${popup_mess}变量值是True,没有值则为False
*** Settings ***
Library AppiumLibrary
Resource ../../元素资源/呼送APP/达人接单.txt *** Keywords ***
达人接单
Open Application http://localhost:4723/wd/hub platformName=Android platformVersion=19 deviceName=127.0.0.1:62001 app=${CURDIR}${/}husong1.0.0_14.apk appPackage=com.husongtechnology.husong
... appActivity=com.hsdzkj.husong.ui.activity.IndexActivity unicodeKeyboard=True resetKeyboard=True #open application的时候最后面增加两个参数,input text支持中文输入
Wait Until Page Contains Element id=${接单} timeout=20 error=达人接单页面未加载成功 #等待达人接单页面显示
Click Element id=${接单} #点击接单按钮
Comment 如果是第一次接单,点击确定,不是第一次,接单成功
${popup_mess} Run Keyword And Return Status Page Should Contain Text 每日完成订单配送后将扣取1元保险费,是否确认接单?
Run Keyword If '${popup_mess}' == 'True' Run Keyword Click Element id=com.husongtechnology.husong:id/cancel