自动化测试
文章平均质量分 67
洛城-sola
不忘初心,方得始终
展开
-
用Python做一个安全攻防工具:端口嗅探器(9)
本章目标本章目标是将工具打包成可执行文件。暂时选择py2exe模块。步骤实施找了一篇示范性的文章,《使用 py2exe 打包 Python 程序》。第一步是安装py2exe模块:pip install py2exe --user这里需要加上 “--user” ,否则会出现权限问题。第二步,在文件夹下,新建python文件 setup.py :from distutils.core import setupsetup(console=["PortSearchGUI.原创 2021-02-19 19:38:28 · 1611 阅读 · 0 评论 -
用Python做一个安全攻防工具:端口嗅探器(4)
本篇目标本篇将对UI进行优化,如果还有篇幅,则尝试引入PySide2的signal、slot机制。UI优化方向在于优化交互,使得界面更容易让人理解,并引入QGroupBox、QBoxLayout进行布局的管理。布局优化先使用QGroupBox、QBoxLayout进行布局上的优化。首先需要将控件放入到QBoxLayout的布局控件里。在最开始设计的UI原型上,分成了上下两大块,下面那块,又分成了左右两边。其中QVBoxLayout是纵向布局,QHBoxLayout是横向布局。原创 2020-12-31 19:42:13 · 817 阅读 · 1 评论 -
用Python做一个安全攻防工具:端口嗅探器(5)
本篇目标这一篇博文主要目标是讲解使用PySide2写界面时遇到的一些注意点。下一篇再开始在代码里实践PySide2的信号槽机制。具体解说界面代码为了方便讲解,先将上一篇的代码粘贴如下:...原创 2021-01-26 11:43:48 · 508 阅读 · 1 评论 -
用Python做一个安全攻防工具:端口嗅探器(3)
阶段目标这一篇开始使用PySide2来搭建端口嗅探器的GUI。说实话,我有点小兴奋,因为又是一个新的领域。花了一个小时设计了一个用户界面,如下:这算是我们的阶段性目标,就是这系列博文看完的时候,需要实现大概这个样子的小工具。好了,接下来摩拳擦掌开始吧!PySide2安装第一步,自然是先安装PySide2。普通安装pip install pyside2使用清华源安装pip install -i https://pypi.tuna.tsinghua.edu.cn/si原创 2020-12-30 20:08:53 · 865 阅读 · 0 评论 -
Airtest实战(六):结合unittest测试框架
前言和思路Airtest提供了好几个assert断言方法,但是断言方法必然会带来程序中断。有人可能会觉得中断了问题不大,少量的测试代码问题确实不大,及时中断,及时发现问题。但若是很多的测试用例,那中断反而会导致测试时间大大延长。这样就必须选用一个测试框架来组织执行测试用例。在有些资料里,建议我们捕捉异常,就是try--catch的方式,但这个未免有些麻烦。原本考虑了pytest+allure,发现allure在airtest里是没有必要的,因为airtest运行后会自动产生一份格式优美的测试报告原创 2020-09-22 19:03:23 · 2355 阅读 · 3 评论 -
Airtest实战(五):安卓测试脚本示例
环境搭好了,看了下说明文档,一大堆一大堆的,我们就开始来个范例吧。我们先设定一个目标,完成我们公司的一款主打app的登录和退出。1、新建一个项目ps:第一次打开的时候就已经新建了个未命名的项目可以继续在这个基础上编辑。2、将apk文件放入air文件夹里apk的文件名字为“51gjj_full_V8.9.5.0907.apk”,这个名字后面要用到。文件放在这个文件夹里,是同级目录,使用相对目录加载会比较方便。3、连接手机。将手机连接上电脑后,在shel.原创 2020-09-17 19:40:44 · 4136 阅读 · 2 评论 -
Airtest实战(四):Windows搭建开发环境
因为前文在Windows环境里搭建了Jenkins,就需要在本地有些可以跑的脚本,就顺势在Windows里搭建一个Airtest开发环境,再顺势开发几个脚本,再在Jenkins里尝试运行脚本。1、先来到官网的下载页面:http://airtest.netease.com/changelog.html2、选择下载内容:3、来到下载确认页面4、点击同意并下载后,开始下载文件。下载速度比Jenkins快多了。5、下载完之后,解压缩,发现这是一个绿色软件,将文件夹移到自己想要原创 2020-09-15 15:56:22 · 883 阅读 · 0 评论 -
Jenkins学习笔记:解决插件安装问题
安装插件结束后,当时界面提示很多插件没有成功,问我是否需要重试,我安排到后面再做解决。今天打开Jenkins后,发现之前的密码不能登录了,仔细想了想,记起之前改过了。用了习惯用的密码,成功登录。查了相关资料,若是密码忘记了,Windows里挺麻烦的,不如卸载了重新安装一次。这里建议大家最好有一个记事用的云笔记本,有什么都可以往上面记录,包括账号密码之类的信息。登录后Jenkins之后,点击 管理Jenkins 按钮,立刻就出现了一堆关于插件没有成功安装的提示:部分插件.原创 2020-09-14 18:04:23 · 9199 阅读 · 0 评论 -
Jenkins学习笔记:Windows环境安装Jenkins
在公司里,Jenkins一开始用于运维的代码持续部署。到了测试团队这边,就可用于代码持续集成了。因为大部分自动化UI测试脚本,需要连接本地开发电脑,所以整体网络架构是这样:至于CI/CD的概念,后面再细细说明。先说环境搭建。先介绍一下开发环境。测试开发环境,首先是几台Windows主机和几台Mac主机。开发安卓脚本,使用Windows主机,开发iOS脚本,使用Mac主机。上面就提到了开发机器,这些机器上安装了Git,开发了代码之后会上传内网Git服务器。内网Gi.原创 2020-09-11 20:01:36 · 157 阅读 · 0 评论 -
常见测试概念-分级测试、灰度测试、AB测试
这个“常见”,是说当我们经历多了之后,会发现这个概念其实很常见,在当前你所处的这个人群中,发现大家都挂在嘴上。在最开始的测试学习中,其实很少提到这些概念,在职业生涯的前期,也很少需要考虑这些概念。分级测试一般用在系统测试阶段。分级测试,就是说对测试进行分级,区分什么重要、什么不重要,做区别对待。之所以需要区别对待,我总结有两个原因。一个是因为资源上的限制,时间、人力,让我们没有条件来做无差别覆盖。二是本身的限制,在测试阶段,提测质量往往是不尽人意的,只能是层层深入去做测试。.原创 2020-09-02 19:07:49 · 5600 阅读 · 0 评论 -
Airtest实战(三):编写第一个iOS设备脚本
本来想从第一个api开始一个一个学起,但是有可能会比较枯燥,就直接来写一个可以运行的脚本吧。系列文章会先从iOS这边开始讲,iOS的硬性门槛会比较高,包括Mac设备、以及第一篇第二篇文章里提及的环境安装。iOS讲完再开始讲Android设备操作。Android开放出的权限比较多,所以有更多的操作可以让大家选择,想想就是一件让人兴奋的事情。Windows暂时没考虑,博主这边公司的业务在Windows上占比较小,但主要还是看大家是否对这块感兴趣。好了,接下来开始精彩的表演,写下我们的..原创 2020-06-12 19:30:05 · 2999 阅读 · 0 评论 -
Airtest实战(二):Mac安装Airtest
首先打开Airtest主页:http://airtest.netease.com在左边会出现下载按钮:这个版本刚好是我需要的,我就点击DOWNLOAD按钮。进入到下载页。同意服务条款。自然是选择允许。下载后时一个dmg文件,打开后将AirtestIDE拖到Applications中,拷贝后,在启动台中出现一个应用图标:这样就代表安装成功了。点击打开,先说验证,那就验证,验证成功后问是否打开,点击打开,然后就没下文了。啥,没下文了?试了几次,原创 2020-05-27 15:38:33 · 3456 阅读 · 0 评论 -
Airtest实战(一):部署iOS-Tagent和设置代理
iOS-Tagent 的根本是 WebDriverAgent,仔细看,会发现iOS-Tagent会比WebDriverAgent简略很多。iOS-Tagent其实就是WDA的优化版本。iOS-Tagent使用git clone https://github.com/AirtestProject/iOS-Tagent.git下载然后通过Xcode打开,做相关设置,点击运行后发现有很多...原创 2020-04-27 15:09:55 · 8716 阅读 · 9 评论 -
Windows搭建UI2开发环境
这里的UI2指的是网易游戏测试团队的大牛开发的UIAutomator2,它可以让我们使用python来开发安卓手机控制脚本。python需要先安装,安卓版本可以自己到www.python.org去下载。安装后,命令行可以运行python和pip命令。$>pythonPython 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 21:26:53) [...原创 2019-07-16 17:13:30 · 893 阅读 · 0 评论 -
Windows安装adb
adb工具即Android Debug Bridge(安卓调试桥)tools。它就是一个命令行窗口,用于通过电脑端与模拟器或者真实设备交互。接下来打算开发一个安卓手机群控软件,会记录相关的一些知识。win+r呼出运行窗口,输入cmd,在命令行输入:adb告诉说不是内部命令,说明本机是没有adb的。不需要去下载很复杂很大的android studio、android platf...原创 2019-07-16 11:56:17 · 26447 阅读 · 0 评论 -
Django部署ECS实战
准备好ecs服务器,本地部署主机为windows系统。本地安装好WinSCP和SecureCRT,并配置ecs服务器登录。用WinSCP登录ecs后,在根目录新建文件夹 Django,文件夹自动给与777权限。将django项目整个拖入文件夹,该项目名称为qa_server。使用SecureCRT登录ecs,命令行输入python发现python版本为3.6,知道后面会有一...原创 2019-06-18 21:38:41 · 341 阅读 · 0 评论 -
Django中使用DateTimeField
DateField相当于mysql中的date类型。DateTimeField相当于mysql的datetime类型。为什么说DateTimeField并非是timestamp类型,因为timestamp是首先存储为世界标准时间然后按客户端当前时区来取,而DateTimeField是存什么就是什么,没有一个转换的过程。在数据表中,我们可以在设计的时候填入默认值,如当前时间,在ORM中,...原创 2019-06-12 15:05:12 · 9852 阅读 · 0 评论 -
五种获取android apk的包名和启动Activity的方法
@[TOC]如何获取android app的Activity如何获取android app的Activity在做自动化的同学,有时候需要获取android app的activity,笔者总结了以下五种方法:方法一如有你有待测项目的源码,那么直接查看源码就好。如果没有,那么请联系有源码的同学,这是推荐方法。比如直接询问安卓客户端开发同事,或者要求在提测单里提供这项数据。建议:不善沟通的糙...原创 2018-11-22 10:47:05 · 5697 阅读 · 0 评论