实验简介 对于APP测试来讲, 除了进行功能测试以外, 安装和卸载其实也是一个很重要的测试项. 试想, 如果用脚本来实现了, 可以事先判断该应用是否已安装, 根据判断结果来执行安装和卸载的动作, 循环它个1000遍, 顺便还可以把安装卸载的稳定性测试也一并做了, 想想还是蛮美好的呢! 实验目的 1. 使用Python + Appium实现apk的安装 2. 使用Python + Appium实现apk的卸载 3. 使用Python + Appium实现apk的关闭或启动等其它操作 实验流程 1.…
Appium移动自动化测试(三)--安装Android模拟器 2015-06-08 10:33 by 虫师, 30828 阅读, 9 评论, 收藏, 编辑 当Android SDK安装完成之后,并不意味着已经装好了安装模拟器.Android系统有多个版本,所以我们需要选择一个版本进行安装. 第三节  安装Android 模拟器 我这里以Android 4.4.2版本为例. 如上图,勾选所需要安装的工具,点击右下角"Install x packages..." 选择"Accep…
继续更新. -------------------------------------------- 第四节  安装Appium Client Appium Client是对webdriver原生api的一些扩展和封装.它可以帮助我们更容易的写出用例,写出更好懂的用例. Appium Client是配合原生的webdriver来使用的,因此二者必须配合使用缺一不可. 在本文档的开始已经介绍Appium支持多种编程语言编写自动化测试脚本,由于我个人熟悉Python语言,所以选择Python语言来编…
Appium移动自动化测试(四)--one demo 2015-06-15 20:41 by 虫师, 40514 阅读, 34 评论, 收藏, 编辑 继续更新. -------------------------------------------- 第四节  安装Appium Client Appium Client是对webdriver原生api的一些扩展和封装.它可以帮助我们更容易的写出用例,写出更好懂的用例. Appium Client是配合原生的webdriver来使用的,因此二者必须…
Appium移动自动化测试(二)--安装Android开发环境 2015-06-04 17:30 by 虫师, 35299 阅读, 23 评论, 收藏, 编辑 继续Appium环境的搭建. 第二节  安装Android开发环境 如果你的环境是MAC那么可以直接跳过这一节.就像我们在用Selenium进行web自动化测试的时候一样,我们需要一个浏览器来执行测试脚本.那么移动端自动化测试,我们同样需要一部Android手机(手机需要链接电脑)或者Android模拟器. 安装java 环境 众所周知,…
Appium移动自动化测试(一)--安装Appium 2015-05-30 17:48 by 虫师, 70668 阅读, 13 评论, 收藏, 编辑 Appium 自动化测试是很早之前就想学习和研究的技术了,可是一直抽不出一块完整的时间来做这件事儿.现在终于有了. 反观各种互联网的招聘移动测试成了主流,如果再不去学习移动自动化测试技术将会被淘汰. ==================== web自动化测试的路线是这样的:编程语言基础--->测试框架--->webdriver API--->…
手机自动化测试:搭建appium手机自动化测试开发环境   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:908821478.poptest已经开始了移动测试开发的课程,在课程中加入了公司的实际案例,学员上课的过程中感觉课程难度很高,我们在想办法保证课程的难度和深度的情况,调整教学方式让学员可以在同样的时间里掌握更深的知识. 本次和大家分享appium的环境搭建. 第一步:安装appium,…
阅读须知 由于OS X系统最近才开始接触,所以有些东西也不是很清楚,这里只提供方法不提供原理,能解释清楚的我也会尽量解释.可能也有一些地方说的不严谨或有错的,还望大家指点一二. 实验环境 操作系统: OS X 10.12.4 appium版本: 1.6.3 ios版本: 10.0.2 Xcode版本: 8.3.3 几个要点: 1.最好拥有开发者帐号(貌似也可以不需要,但是为了本例成功最好需要有,找公司的ios开发要就行) 2.一台mac系统电脑(不建议黑苹果,因为可能会影响开发者帐号的使用) 3…
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']…
appium+python自动化测试 标签(空格分隔): appium 获取APP的包名 1.aapt即Android Asset Packaging Tool,在SDK的build-tools目录下.该工具可以查看apk包名和launcherActivity 2.在android-sdk里面双击SDK-manager,下载buidl-tools 3.勾选build-tools,随便选一个版本,我这里选的是24的版本 4.下载完成后:在D:\androidsdk\android-sdk-wind…
Appium移动自动化测试(一)--工具软件安装 详情参考-- http://www.cnblogs.com/fnng/p/4552438.html 第一节  安装node.js Appium 官方网站:http://appium.io/ 官方给出的步骤: Easy setup process, run a test now. > brew install node        # get node.js > npm install -g appium  # get appium > …
1.简介 有些测试场景或者事件,Selenium根本就没有直接提供方法去操作,而且也不可能把各种测试场景都全面覆盖提供方法去操作.比如:就像鼠标悬停,一般测试场景鼠标悬停分两种常见,一种是鼠标悬停在某一个元素上方,然后会出现下拉子菜单,第二种就是在搜索输入过程,选择自动补全的字段.关于鼠标悬停,selenium把这个方法放在了Actions.java文件中,先来看看鼠标悬停出现下拉菜单的情况. 2.鼠标悬停出现下拉菜单 鼠标悬停出现下拉菜单,顾名思义就是:鼠标悬停在某一元素上出现下拉菜单. 2.…
TIB自动化测试快讯 - Appium手机自动化测试学习资料精选   Appium+Android+Javahttp://automationqa.com/forum.php?mod=viewthread&tid=3541&fromuid=29 Appium+iOS+Java TestNGhttp://automationqa.com/forum.php?mod=viewthread&tid=3536&fromuid=29 Linux 下运行 Appium 的 sample…
消失了3个月,有一段时间没来园子更新博客了,各位看官见谅哈哈,消失是因为刚换了工作环境没外网,好多笔记没能及时的记录分享,以后有时间慢慢补上吧,这段时间主要接触了移动端app的自动化测试,公司为了快速把移动端自动化这块搞起来,试用几款目前流行的工具,腾讯的xtest定制版.神州数码的自动化测试平台.开源rf+appium框架. 经过一段试用最终还是选择了rf+appium主要原因有: 1.开源,网上社区活跃 2.扩展性强,针对不同项目不同的需求,封装不同的方法来实现 3.基于python语言,语…
初次尝试使用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/ 备注:我本…
Django基础八之cookie和session 本节目录 一 会话跟踪 二 cookie 三 django中操作cookie 四 session 五 django中操作session 六 xxx 七 xxx 八 xxx 一 会话跟踪 我们需要先了解一下什么是会话!可以把会话理解为客户端与服务器之间的一次会晤,在一次会晤中可能会包含多次请求和响应.例如你给10086打个电话,你就是客户端,而10086服务人员就是服务器了.从双方接通电话那一刻起,会话就开始了,到某一方挂断电话表示会话结束.在通话…
import export 这两个家伙对应的就是es6自己的 module功能. 我们之前写的Javascript一直都没有模块化的体系,无法将一个庞大的js工程拆分成一个个功能相对独立但相互依赖的小工程,再用一种简单的方法把这些小工程连接在一起. 这有可能导致两个问题: 一方面js代码变得很臃肿,难以维护 另一方面我们常常得很注意每个script标签在html中的位置,因为它们通常有依赖关系,顺序错了可能就会出bug 在es6之前为解决上面提到的问题,我们得利用第三方提供的一些方案,主要有两种…
上一篇: mac上搭建appium+IOS自动化测试环境(一) 9.安装appium-xcuitest-driver依赖 进入WebDriverAgent安装目录,运行bootstrap 首先进入目录(如果WebDriverAgent 所在路径和此不同,请自行查找) cd /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent mkdir -p Resources/WebDrive…
Python学习系列(五)(文件操作及其字典) Python学习系列(四)(列表及其函数) 一.文件操作 1,读文件      在以'r'读模式打开文件以后可以调用read函数一次性将文件内容全部读出,也可以指定每次read读多少字节,例如: #coding:utf-8 fn='test1.py' fp=open(fn,'r') #以读的方式打开文件,文件必须首先存在和,.文件在同一目录下py print 'reading pos:',fp.tell() r=fp.read(20) #读取文件内…
Appium+Java 自动化测试框架搭建主要分为以下几个方面的下载安装及环境配置 1.Java开发环境 涉及到的内容又jdk.编译器工具(推荐jdk 1.8.Eclipse编译器或者IDEA编译工具) 2.Android ADT 或者SDK 安装 3.Appium 安装 一.Java开发环境 eclipse 编译工具下载地址https://www.eclipse.org/downloads/ jdk1.8下载:https://www.oracle.com/technetwork/java/ja…
1.简介 本文主要介绍两个在测试过程中可能会用到的功能:Actions类中的拖拽操作和Actions类中的划取字段操作.例如:需要在一堆log字符中随机划取一段文字,然后右键选择摘取功能. 2.拖拽操作 鼠标拖拽操作,顾名思义就是:就是鼠标按住将一个元素拖拽到另一个元素上. 2.1基础讲解 //鼠标拖动API,首先实例化一个对象,后边将用这个对象进行一系列操作 Actions action = new Actions(webdriver); //source-要拖动的元素A,target-拖动元…
1.简介 上一篇中,宏哥说的宏哥在最后提到网站的反爬虫机制,那么宏哥在自己本地做一个网页,没有那个反爬虫的机制,谷歌浏览器是不是就可以验证成功了,宏哥就想验证一下自己想法,于是写了这一篇文章,另外也是相对前边做一个简单的总结分享给小伙伴们或者童鞋们.废话不多数,直接进入今天的主题. 2.鼠标操作 WebElement的click()方法可实现元素的点击操作,但是没有提供鼠标的右击/双击/悬停/鼠标拖动等操作.这些操作需要通过Action类提供的方法来实现! 2.1Action常用的API Act…
五.Python操作redis 一.python对redis基本操作 (1)连接redis # 方式1 import redis r = redis.Redis(host='127.0.0.1', port=6379) r.set('foo', 'Bar') print(r.get('foo')) # 方式2 import redis pool = redis.ConnectionPool(host='127.0.0.1', port=6379) r = redis.Redis(connecti…
前言: 上一篇<appium+java(四)微信公众号自动化测试实践>中,尝试使用appium实现微信公众号自动化测试,接着尝试小程序自动化,以学院小程序为例 准备工作 1.java-client 3.4.16依赖包 2.微信应用版本7.0.0 3.android手机(7.0+版本) 4.appium-desktop V1.10.0 我仔细看了下,这个小程序使用安卓原生较多,因此,和平常的ui自动化就一样了,不多说,上代码了 代码实例 /** * 小程序自动化测试 * * @throws Ex…
​5.1 Capability介绍 5.1.1 什么是Capability 在讲capability之前大家是否还记得在讲log时给大家看过的启动时的日志?在我们的整个启动日志中会出现一些配置信息,其实那些信息就是capability携带的配置信息,如果我们通过代码来启动我们能够看见的配置信息如下: PATH = lambda p: os.path.abspath(os.path.join(os.path.dirname(__file__), p)) capabilities = {} capa…
初探 在Android的SDk提供了以下的工具来支持我们进行UI自动化测试: uiautomatorviewer:用来扫描和分析Android应用程序的UI控件的工具. uiautomator:一个包含创建测试.执行自动化测试API的java库. 谷歌Uiautomator文档:http://android.toolib.net/tools/help/uiautomator/index.html 要使用这些工具,你必须安装Android开发工具以下版本: Android SDK Tools:AP…
模拟键盘输入也是非常重要的操作.这一小节来介绍那些关于键盘的操作. 1.sendKeys()方法 方法: sendKeys() 用法: driver.findElements(By.name("Name")).sendKeys("jack"); 2.pressKeyCode()方法 除此之外,appium扩展提供了pressKeyCode()方法.该方法Android特有. 方法: pressKeyCode() 发送一个键码的操作.需要一个入参. driver.pr…
1. 页面封装——理性判断 2. basepage——定位表达式的判断——要加上移动端的,加上上下左右滑动封装.toast可以封装.webview切换操作 3. 页面当中,所有元素定位——更换——移动端的定位表达式 4. 页面当中,函数名字不需要改——函数的实现修改为移动端的用法 修改和新增功能: 5. 测试数据适当修正 6. 优化启动会话——appium——配置数据太多了,每一个测试文件都必须经历这个步骤 7. 测试用例——步骤修改——验证的条件修改 1. 是否有欢迎页面,如果有就要一步步滑下…
Appium的辅助类,主要针对手势操作,比如滑动.长按.拖动等. 1.按压控件 方法: press() 开始按压一个元素或坐标点(x,y).通过手指按压手机屏幕的某个位置. press(WebElement el, int x, int y) press也可以接收屏幕的坐标(x,y). 例: TouchAction(driver).press(x=0,y=308).release().perform() 除了press()方法之外,本例中还用到了别外两个新方法. release() 结束的行动取…
模拟键盘输入也是非常重要的操作.这一小节来介绍那些关于键盘的操作. 1.sendKeys()方法 方法: sendKeys() 用法: driver.findElements(By.name("Name")).sendKeys("jack"); 2.pressKeyCode()方法 除此之外,appium扩展提供了pressKeyCode()方法.该方法Android特有. 方法: pressKeyCode() 发送一个键码的操作.需要一个入参. driver.pr…