① python测试有什么用途
Python测试有什么用途
Python测试用途如下:
1、使用Python +Selenium实现web端的UI自动化
Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。
Python与Selenium结合能够很好的实现web端的UI级别的自动化。Selenium几乎能解决目前遇到的web页面中所有的定位难题,当然有些特殊的可以借助JavaScripts也可以实现。
2、使用Python + Requests实现接口测试
进入python requests官网看到的的第一句话是:Requests 唯一的一个非转基因的Python HTTP 库,人类可以安全享用。
通过requests库提供的各种API可以非常方便的模拟HTTP请求,实现接口自动化测试。
3、使用Python + Appium实现app自动化测试
Appium是一个自动化测试开源工具,支持 iOS 平台和android 平台上的原生应用,web 应用和混合应用。
所谓的 移动原生应用 是指那些用iOS 或者 Android SDK 写的应用。所谓的 移动 web 应用 是指使用移动浏览器访问的应用(Appium 支持 iOS 上的Safari 和 Android 上的 Chrome)。所谓的“混合应用”是指原生代码封装网页视图——原生代码和web 内容交互。比如,像 Phonegap,可以帮助开发者使用网页技术开发应用,然后用原生代码封装,这些就是混合应用。
重要的是,Appium 是一个跨平台的工具:它允许测试人员在不同的平台(iOS,Android)使用同一套API来写自动化测试脚本,这样大大增加了iOS 和 Android 测试套件间代码的复用性。
Appium也是多语言支持,当然也是支持python的,运用python + Appium可以实现跨平台的app UI自动化测试。
更多技术请关注Python视频教程。
② 基于Appium+WDA+Python搭建IOS自动化测试全纪录(三):真机demo运行
前期回顾:
基于Appium+WDA+Python搭建IOS自动化测试全纪录(二):模拟器demo运行
基于Appium+WDA+Python搭建IOS自动化测试全纪录(一):环境搭建
在模拟器将demo跑通之后,就要在真机上测试啦,模拟器总是要为真机服务的。
在真机上主要是涉及到签名及证书的问题,一下blog写的特别好,然而其实我也没有看懂,RSA算法神马的早在密码学课程上还给老师了。
iOS App 签名的原理
主要在此简单记录一下证书的配置吧。
在xcode中找到build Setting配置部分(之所以把这张图放出来是因为我最开始找不到这个配置,萌新啥都找不到):
更改一下三个字段对应的内容:
Code Siging identify 证书里面对应的开发者
Proct Bundle Identify 对应的bundleID
Provisioning Profile 包含了 证书 / Entitlements 等数据,并由苹果后台私钥签名的数据包。
数据包是.mobileprovision文件格式结尾 在终端中输入如下命令即可看到里面的信息
改完之后 我们开发的程度就可以装到真机上啦,这个时候选择在真机上运行,就可以啦。
测试app装到真机上之后,还要考虑如何开启py脚本,在真机上进行测试。
这里需要注意两点:
最后找到的地址大概如下:
放到xcode中进行签名证书配置,注意虽然我们打开的是WebDriverAgent文件夹,但是我们要配置的是WebdDriverAgentRunner 在其Build Settings中进行与证书有关的配置
配置完毕后还需要再WebdDriverAgentRunner中添加一个RoutingHTTPServer.frameork
点击添加之后->add Other
在如下路径可以查找到该framework
找的一定是appium文件路径下的!
上边关于wda并没有做过多说明,因为还不怎么了解 等了解了再补充相关知识
py脚本主要是配置有更改,主体文件请见开头(二)模拟器demod的blog
在真机上配置更改如下:
然后启动appium 发现真机上装上了厕所app 装上了WebDriverAgentRunner 然后用python运行脚本就ok拉!
以上为从搭建环境-》模拟器跑demo-》真机跑demo的简单记录,不涉及到原理方面的讲解,如有错误之处还请提出。
【之后还有跳一跳的安卓环境搭建
wda的inspector相关环境还没记录~】
[Tbc]
个人博客:
进击的程序茗
③ 测试新人如何使用Python代码封装自动化测试的用例
使用Python代码封装自动化测试的用例, 意味着将代码封装到一个整体中, 在python中面向对象的编程思维方式是最适合封装了:
①把测试的数据和测试的过程封装到类的内部成为一个整体, 便于测试数据和测试流程的管理维护;
②Python中面向对象封装的特性有利于隐藏内部实现的复杂度, 对于调用者来说直接调用即可 ;
③Python面向对象中的类,是实现封装最佳体现, 把数据和对数据的操作封装在类的内部,, 对数据起到保护作用, 提高了代码的安全性和健壮性;
④Python中面向对象的编程模式体现了模块化的思想, 模块可以重用, 模块容易扩展, 简化测试的流程, 提高测试的效率。
更高效的编写实现自动化测试用例,Python中面向对象编程思维方式是必须掌握的,亲戚在传智播客学的软件测试,现在月薪13K。
④ Python Appium自动化测试 Monkey搭建+操作
Monkey 是 Android SDK 提供的一个命令行工具, 可以简单,方便地运行在任何版本的 Android 模拟器和实体设备上。 Monkey 会发送伪随机的用户事件流,适合对 App 做压力测试。
Monkey 测试就像一只猴子,在电脑面前乱敲键盘在测试。 通过 Monkey 程序模拟用户触摸屏幕、滑动 Trackball 、 按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常。
Android 官方自动化测试领域这只 “猴子” 一旦启动,就会让被测的 Android 应用程序像猴子一样活蹦乱跳,到处乱跑。常用 Monkey 来对被测程序进行压力测试,检查和评估被测程序的稳定性。
Android 官方对与 Monkey 的描述:
Monkey 是一个程序,运行在模拟器或设备上,并生成伪随机的用户事件流,如点击、触摸、手势,以及一些系统级事件。 你可以使用 Monkey 以随机但可重复的方式对正在开发的应用程序进行压力测试。
官方文档: http://www.android-doc.com/tools/help/monkey.html
安装 Android SDK 并配置环境变量。
Monkey 主要用于 Android 的压力测试,自动的一个压力测试小工具, 主要目的就是为了测试 app 是否会 Crash 。
(1) Monkey 程序由 Android 系统自带,使用 Java 诧言写成,在 Android 文件系统中的存放路径是: /system/framework/monkey.jar;
(2) Monkey.jar 程序是由一个名为 “monkey” 的 Shell 脚本来启动执行, shell 脚本在 Android 文件系统中 的存放路径是:/system/bin/monkey;
(3) Monkey 命令启动方式:
Monkey 运行在设备或模拟器上面,可以脱离 PC 运行。普遍做法是将 monkey 作为一个像待测应用发送随机按键消息的测试工具。验证待测应用在这些随机性的输入面前是否会闪退或者崩溃。
Monkey 虽然可以根据一个指定的命令脚本发送按键消息,但其支持条件判断,也支持读取待测界面的信息来执行验证操作。
Monkey 程序是 Android 系统自带的,其启动脚本是位于 Android 系统的 /system/bin 目录的 Monkey 文件,其 jar 包是位于 Android 系统的 /system/framework 目录的 Monkey.jar 文件。用户主要是通过 adb 命令来启动 Monkey 的, Monkey 在运行时,会根据命令行参数的配置,生成伪随机的事件流,并在 Android 设备上执行对应的测试事件。同时, Monkey 还会对测试系统进行监测,当出现以下几种情况时会进行特殊处理:
以夜神模拟器为例:
1、检查设备连接状态
2、从上图看出,设备未连接,连接移动设备
3、再次查看设备连接状态
4、连接成功后输入命令:adb shell
5、进入到指定目录,命令:cd /system/bin
6、输入 monkey命令看到如下提示则说明启动成功
monkey 命令格式如下:
[options] 是指 monkey 可传入的参数,是可选项(如果不指定options,Monkey将以无反馈模式启动,并把事件任意发送到安装在目标环境中的全部包)
<event-count> 是指随机发送事件数。如:输入100就是执行100个伪随机事件,为必选项
测试工程师职业发展路线:
功能测试 — 接口测试 — 自动化测试 — 测试开发 — 测试架构师
内容就到这里,如果你对Python自动化软件测试感兴趣的话可以加入我们175317069扣裙一起学习。群里会有各项测试学习资源发放,更有行业深潜多年的技术人分析讲解。
作为测试工程师,不断提升自己工作能力是提高薪资待遇最重要的基础。另外也要注重学习, IT 行业是个不断发展、更新迭代相对较快的行业,技术具有明显的时代特征,所以紧跟时代技术的发展才能让自己不掉队,在职场当中具有足够的竞争力。
⑤ python+appium中的tap怎么用呀
先看看tap是什侍帆镇么,定义在了TouchAction中,代码如下
def tap(self, element=None, x=None, y=None, count=1):
"""Perform a tap action on the element
:Args:
- element - the element to tap
- x - (optional) x coordinate to tap, relative to the top left corner of the element.
- y - (optional) y coordinate. If y is used, x must also be set, and vice versa
:Usage:
"""
opts = self._get_opts(element, x, y)
opts['count'] = count
self._add_action('tap', opts)
return self
实际的使用中根据这个来自定义一些方法来用,比如你这个点击屏幕,可轿行以定义如下,后面传老粗递参数即可
def tap_screen(self, x, y):
self.action.tap(None, x, y).perform()
另外我这边是计算中心坐标是除以2,是没问题的。比如你这个就是center_x = w / 2,center_y = y / 2,后面直接调用tap_screen(center_x,center_y)就行了
⑥ Appium环境部署(三)——python的下载、安装与配置
一、下载:根据个人环境和需求选择对应版本进行下载
1、官网下载
https://www.python.org/
3、网上输入关键字“python”搜索
二、安装与配置
1、找到下载exe文件,然后双击,进行安装
2、定义好要装python的目录后,然后把下方的两个选项勾选上(方便后期使用python的,不然还得自己去环境变量进行配置)(注意:安装目录尽量不要选择C盘)
3、需要同时安装两个python版本,比如python2、python3
(1)2个程序安装方法一致,双击进行安装,自定义安装
(2)安装的文件夹不要在同一个目录下
(3)重点:在安装好的目录下找到“python.exe”这个执行文件,然后进行自定义命名:比如这个目录下安装的是2.0,那就修改成“python2.exe”;另一个目录下安装的是3.0,那就修改成“python3.0.exe”
(4)然后把这两个目录及各自目录下的Scripts目录添加到环境变量path下,如 E:python;E:pythonScripts;E:python39;E:python39Scripts
三、检查环境
1、打开cmd,输入python,回车,查看返回的版本号
2、如果安装的时候修改了“python.exe”的名字为“python3.exe”,则在cmd框输入python3,回车,查看返回的版本号
3、可以编个学习语言的语句输出试用一下 如 print("Hello World") 回车输出查看结果