Python Appium 滑动、点击等操作】的更多相关文章

Python Appium 滑动.点击等操作 1.手机滑动-swipe # FileName : Tmall_App.py # Author : Adil # DateTime : 2018/3/25 17:22 # SoftWare : PyCharm from appium import webdriver caps = {} caps['platformName'] = 'Android' caps['platformVersion'] = '6.0' caps['deviceName']…
一句代码:driver.keyevent()        括号里填入的是手机物理按键的数字代号 driver.press_keycode()        括号里填入的是键盘按键的数字代号 手机物理键数字代码 键盘按键数字代号…
滑动屏幕方法swipe一般用于对页面进行上下左右滑动操作,但自动化过程中还会遇到其他情况,如对控件元素进行滑动.拖拽操作,九宫格解锁,手势操作,地图的放大与缩小等.这些需要针对控件元素的滑动操作,或者点至点.元素至元素之间的滑动操作,使用swipe方法显然不是很方便,这时候就可以用到appium里提供TouchAction类和MultiAction类. 一,TouchAction类 1,TouchAction类由webdriver库提供,提供以下方法: tap(self, element=Non…
简介 Appium 是一个开源的自动化测试工具,支持 Android.iOS 平台上的原生应用,支持 Java.Python.PHP 等多种语言. Appium 封装了 Selenium,能够为用户提供所有常见的 JSON 格式的 Selenium 命令以及额外的移动设备相关的控制命令,比如:多点触控手势.屏幕朝向等. 环境 本文主要环境如下: Win7 JDK1.8 Appium Python3.7 android-sdk mumu 模拟器 JDK 下载地址:https://www.oracl…
appium滑动操作(向上滑动.向下滑动.向左滑动.向右滑动) 测试app:今日头条apk 测试设备:夜游神模拟器 代码如下: 先用x.y获取当前的width和height def getSize(): #获取当前的width和height的x.y的值 x = driver.get_window_size()['width'] #width为x坐标 y = driver.get_window_size()['height'] #height为y坐标 return (x, y) 屏幕向上滑动 de…
---恢复内容开始--- Appium自动化公司内部测试培训1-环境搭建 课程目的 一.Python + Appium 环境搭建 课程内容 1    安装前准备工作 搭建环境所需要的安装文件已经下载好,从SVN上获取即可,解压,如下 2   Appium环境搭建 Appium是一个开源的,适用于原生或者移动网络和混合应用程序在 iOS 和 Android 平台上的的开源自动化测试框架. 2.1  安装Node.js 点击安装文件,下一步下一步直接安装,安装成功后,输入cmd打开windows的命…
封装python+appium 的baseview模块 from selenium.webdriver.support.ui import WebDriverWait from time import sleep import os import time class BaseView(object): def __init__(self, driver): self.driver = driver def find_element(self, *loc): # 查找单个元素 try: WebD…
做APP的UI自动化测试时,我们往往会使用真机跑自动化测试脚本,因为这样才是最真实的使用场景.但前期调试脚本的话,可以先使用模拟器,这样相对更加方便. 不推荐使用Android SDK里自带模拟器,太卡. 这里介绍两款我正在用于做自动化测试的模拟器:Genymotion 与 夜神模拟器. 一,Genymotion 1,注册账号 使用Genymotion时需要登录账号,我们需要去Genymotion官网注册账号. 官网地址:https://www.genymotion.com/ 官网首页点击[Si…
自己踩过的坑,不记下来就会忘掉,忘了就会不断的重复踩坑!! 重来在一台电脑上搭建了python的环境,在运行的时候,提示找不到adb.exe,看到这个问题我在想是不是我的环境变量配置有问题,我就去改了环境变量的问题,发现还是提示这个问题:接下来就是,各种百度怎么找出来的没有和我一样的问题呢?更改搜索方式python +appium运行,出现找不到adb.exe,果然找到了!这个问题的答案特别熟悉啊!-----原来是 我的模拟器没有开启开发者选项! 模拟器开启开发者选项的操作如下: 设置 -> 我…
appium做app自动化测试,环境搭建是比较麻烦的. 也是很多初学者在学习app自动化之时,花很多时间都难跨越的坎. 但没有成功的环境,就没有办法继续后续的使用. 在app自动化测试当中,我们主要是通用电脑端的python代码,能够驱使手机端的app去进行操作. 比如打开一个app,输入用户名和密码,进入登陆操作. 由于电脑端和手机端是两个独立的设备. 要实现数据通信,就需要将二者连一起. 因此对于真机用户,需要用USB线连接手机和电脑,并且在开发者选项当中,开启USB调试模式. App自动化…
#这里的示例是用android来说明的,xpath应该是通用的,resource-id不太清楚,没配过IOS的环境 #环境配置和一些参数的意思不清楚可以看我上一篇python appium笔记(一) (一)说明 主要说明下面2种方式,其实感觉通过xpath,不管selenium还是appium,应该能定位全部元素了. 1.resource-id:定义了resource-id,并且唯一的情况下,可以使用这种方式 2.xpath:任何情况下,都可以用xpath进行定位 (二)查看 #做第四步的时候,…
初次尝试使用jenkins+python+appium构建自动化测试 因为刚刚尝试使用jenkins+python+appium尝试,只是一个Demo需要很多完善,先记录一下今天的成果,再接再厉 第一步:在本地的window系统安装jenkins 1)    Jenkins下载地址:http://mirrors.jenkins-ci.org 2)    启动jenkins:java –jar Jenkins.war 3)    使用chrome浏览器打开127.0.0.1:8080/ 备注:我本…
1.获取 Android app的Activity 打开终端cmd,先cd进入到刚才下载的“新浪.apk”目录下,然后使用aapt dump badging xxx.apk命令获取包内信息.注意,启动类名称一个字母都不能错.  aapt dump badging 新浪.apk cat>d:/log.txt     这样可以将信息指定到某一文件下然后 查看  罪过了,后面发现正常是没有appt.exe 这个应用程序的.可以下载一个放到tools文件下,因为已经配置了环境变量,所以 可以直接使用.…
  遇到一个非常郁闷的问题,终于解决了, 问题是这样的,NN网站的价格计划,每一个价格计划需要三连击才能全部点开,第一个房型的价格计划是可以正确三连击打开的,可是第二个房弄就不行了,报错说不是可点击的元素,具体错误如下:WebDriverException: Message: Element is not clickable at point (1372.5, 9.5). Other element would receive the click: <li style="display:…
问题思考 在混合开发的App中,经常会有内嵌的H5页面.那么这些H5页面元素该如何进行定位操作呢? 解决思路 针对这种场景直接使用前面所讲的方法来进行定位是行不通的,因为前面的都是基于Andriod原生控件进行元素定位,而Web网页是单独的B/S架构,两者的运行环境不同因此需要进行上下文(context)切换,然后对H5页面元素进行定位操作. context 关于应用程序环境的全局信息的接口. 这是一个抽象类,其实现由Android系统提供. 它允许访问特定于应用程序的资源和类,以及对应用程序级…
appium模拟用户的真实操作,如果用户第一次进入app或许会弹出一些更新提示,或者是引导页面,但是下一次开启app时则没有引导页这些界面,这时,脚本中又肯定不考虑用两套代码来进行维护,此时如何应对这种场景进行处理呢? 比如启动淘宝应用,之前使用这个noReset配置,当默认设置为False,即每次进入都会清除掉session,即有温馨提示弹窗出现,那当设置为True时,第二次进入时,不会有弹窗,那此时再执行原有的脚本就会报错,有人会说用if语句来进行判断,亲测也会出现问题,所以最后还是推荐用t…
1.安装及下载 selenium安装: pip install selenium  即可自动安装selenium geckodriver下载:https://github.com/mozilla/geckodriver/releases Chromedriver下载:http://npm.taobao.org/mirrors/chromedriver/ 2.保存路径 将下载好的geckodriver以及Chromedriver解压到桌面,打开我的电脑,找到Python文件夹中anancode文件…
经过了这个月的学习,今天终于完成了公司APP系统的自动化的脚本的编写. 通过单元测试框架UNITTEST,进行脚本的连跑,本来还想把测试数据统一写到EXCEL表格内,实现脚本与数据的分离. 后来发现增加了很多的工作量,这个时间投入的不值得,性价比不高. 因为使用的是APPIUM在模拟器中操作,所以脚本运行速度,远不及selenium运行速度快,同时,维护难度增加,脚本连跑时,因为受到系统影响, 连跑报错率很高,需要多跑几次,才能全部跑通. 最近把时间与精力都投入到APPIUM+python的学习…
一.环境准备 1.脚本语言:Python3.x    IDE:安装Pycharm 2.安装Java JDK .Android SDK 3.adb环境,path添加E:\Software\Android_SDK\platform-tools 4.安装Appium for windows,官网地址 http://appium.io/ 点击下载按钮会到GitHub的下载页面,选择对应平台下载 安装完成后,启动Appium,host和port默认的即可,然后设置Android SDk和Java JDK…
用python+appium做appUI自动化测试,系统为Windows.首先是JDK与Android SDK的安装与环境变量的设置. 一,安装JDK,配置JDK环境变量 1,下载jdk jdk8官网下载地址: https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html 选择对应的系统下载,我的电脑是Windows64位所以选择红框标注的安装包下载. 官网下载需要创建登录Oracle账号,下面提供一个网盘下…
1.Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度.Memcached基于一个存储键/值对的hashmap.其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信 memcached服务端安装部署 安装libevent memcached依赖于libevent API,因此要事先安装之…
本节学习Python的格式化输出,文件操作以及json的简单用法 1.格式化输出 将非字符串类型转换成字符串,可以使用函数:str() 或者repr() ,(这两个函数的区别目前我还没搞懂,求解答) >>> str([1,2,3,4]) '[1, 2, 3, 4]' >>> repr([1,2,3,4]) '[1, 2, 3, 4]' >>> str(10) ' >>> repr(10) ' 可以使用str.ljust() .str.…
python处理系统路径的相关操作: # -*- coding: utf-8 -*- import os # 属性 print '__file__: %s' % __file__ # 绝对路径(包含文件名) abspath = os.path.abspath(__file__) print('abspath: %s' % abspath) # 路径(剔除文件名) dirname = os.path.dirname(abspath) print('dirname: %s' % dirname)…
Python的文件与文件夹操作 Python OS模块 1.重命名:os.rename(old, new) 2.删除:os.remove(file) 3.列出目录下的文件 :os.listdir(path) 4.获取当前工作目录:os.getcwd() 5.改变工作目录:os.chdir(newdir) 6.创建多级目录:os.makedirs(r"c:/python /test") 7.创建单个目录:os.mkdir("test") 8.删除多个目录:os.rem…
Python模拟键盘输入和鼠标操作 一.Python键盘输入模拟: import win32api import win32con win32api.keybd_event(17,0,0,0)  #ctrl键位码是17 win32api.keybd_event(86,0,0,0)  #v键位码是86 win32api.keybd_event(86,0,win32con.KEYEVENTF_KEYUP,0) #释放按键 win32api.keybd_event(17,0,win32con.KEYE…
最近用python写爬虫爬了点数据,确实是很好用的东西,今天对python如何操作cookie进行一下总结. python内置有cookielib模块操作cookie,配合urllib模块就可以了很轻易的爬取数据. #encoding:utf8 import urllib2 import cookielib #获取cookie,并将保存在变量中的cookie打印出来 def Cookie(): #声明一个CookieJar对象来保存cookie cookie = cookielib.Cookie…
微信支付取消2万元保证金门槛,这是全民电商来袭!-观点-虎嗅网 微信支付取消2万元保证金门槛,这是全民电商来袭! casperjs配合phantomjs实现自动登录百度,模拟点击等等操作 - 怕虎在线www.ipahoo.com图文教程 - 怕虎在线 casperjs配合phantomjs实现自动登录百度,模拟点击等等操作…
Python/MySQL(二.表操作以及连接) mysql表操作: 主键:一个表只能有一个主键.主键可以由多列组成. 外键 :可以进行联合外键,操作. mysql> create table yuan(id int auto_increment,yuangongname int,bumen_id int, primary key(id,yuangongname))engine=innodb default charset=utf8; Query OK, 0 rows affected (0.43…
Python  Appium  元素定位 常用的八种定位方法(与selenium通用) # id定位 driver.find_element_by_id() # name定位 driver.find_element_by_name() # xpath定位 driver.find_element_by_xpath() # class_name定位 driver.find_element_by_class_name() # css 定位 driver.find_element_by_css_sele…
1.python环境搭建,这里就不做过多介绍 2.安装 node.js 2.1.官网下载node.js:https://nodejs.org/en/download/ 2.2.获取到安装文件后,直接双击安装文件,根据程序的提示,完成nodejs的安装. 2.3.安装完成后,运行cmd,输入node –v,如果安装成功,会输出如下版本信息: 3.Android SDK环境搭建 3.1.解压SDK到指定目录下如下图 3.2.配置环境变量 path += ;%ANDROID_HOME%\platfor…