前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >robotframework-appiumlibrary安卓自动化测试输入手势密码

robotframework-appiumlibrary安卓自动化测试输入手势密码

原创
作者头像
世平
修改2021-09-23 18:04:51
8640
修改2021-09-23 18:04:51
举报
文章被收录于专栏:世平

查阅robotframework-appiumlibrary在线帮助,没有发现按住滑动的关键字,所以这部分的操作需要自己修改python的库文件,添加相应的操作。

为了便于使用,将此操作封装了一个方法,实现了一种可以根据屏幕像素自动计算参数的实现。

1.添加手势密码关键字

首先,修改python库文件,添加操作关键字。

修改python安装路径下的文件_touch.py,例如:C:\Users\XXX\AppData\Local\Programs\Python\Python37\Lib\site-packages\AppiumLibrary\keywords。

增加一个方法:

代码语言:javascript
复制
 def huizhishoushimima(self, x1=0, y1=0, x2=0, y2=0, x3=0, y3=0):
        driver = self._current_application()
        action = TouchAction(driver)
        action.press(x=float(x1), y=float(y1)).wait(ms=500).move_to(x=float(x2), y=float(y2)).wait(ms=500).move_to(x=float(x3), y=float(y3)).wait(ms=500).release().perform()

其中,(x1,y1)是起始点坐标,(x2,y2)是转折点坐标,(x3,y3)是结束点坐标。这样可以实现一个简单的折线手势密码。

方法定义成全拼音的模式,可以避免跟类库中的其他方法重名 :P

2. 在Appium中使用

然后,在自动化脚本中使用此关键字。

一般3x3的手势密码九个点,下面的比例可以经过4个点,完成手势密码的绘制。

代码语言:javascript
复制
绘制手势密码
    ${screenwidth}    Get Window Width
    ${screenheight}    Get Window Height
    ${x1}    Evaluate    ${screenwidth}*${0.2}
    ${y1}    Evaluate    ${screenheight}*${0.5}
    ${x2}    Evaluate    ${screenwidth}*${0.8}
    ${y2}    Evaluate    ${screenheight}*${0.5}
    ${x3}    Evaluate    ${screenwidth}*${0.8}
    ${y3}    Evaluate    ${screenheight}*${0.65}
    huizhishoushimima    ${x1}    ${y1}    ${x2}    ${y2}    ${x3}    ${y3}

输入手势密码
    click element    //*[contains(@text,'请登录')]
    Wait Until Page Contains    输入手势密码    10
    绘制手势密码

大家也可以根据自己项目的实际需要,修改方法中的参数值。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.添加手势密码关键字
  • 2. 在Appium中使用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档