Python接口自动化测试框架--工欲善其事必先利其器
前言
本作者在别处技术论坛开通了3个收费专栏,自开通以来平均月盈100左右,从作者的立场来看,感觉有点受宠若惊,但是站在读者的立场,却有点那么美中不足,一是目录结构不够系统,有点东拼西凑的感觉;二是内容篇幅不够清晰明了,有些全是代码,有些概念又没讲透彻。然后又被掘金运营大佬拉来掘金发展,弃之不顾,又无时间优化,作者本人也深感不安,有点辜负粉丝错爱;借此掘金运营活动,重新梳理,虽然在掘金不能换成现金,但是月度更文的奖励丰富啊。
介绍
从作者的测试岗位本身来说,无论在名气大的技术论坛还是圈子本身,都显得有点微不足道;所以作者也奢望通过这样的一个平台来展现自己。作者之前从事过流水线的QC(JQE)、嵌入式软件测试(偏硬件)、游戏测试、OA系统测试(互联网)、信用卡系统测试(金融)、P2P软件测试(正式进入互联网软件行业)等等行业,岗位级别呢也从一步步的走向管理岗(嗯,走的是技术路线)。虽然离高段位还有一段蛮长的路(这也是有一定机遇的),但是谁也不能成为作者努力进度的绊脚石,加油吧,中年大叔。
接口自动化测试
在搭建框架之前,应该要明白的一些事
什么是接口测试
接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。
-- –百度百科
为什么选择python
为什么不是java或其他编程语言呢?其实这一波是被线上培训机构带火的,打着0基础、简单易学、容易入手的‘幌子’‘骗’进来一群在测试道路上迷途的小羔羊,不过事实也如此;Python的确有它火的优势,从事接口/UI自动化测试已绰绰有余。不信?你开始学一下就知道了,听百遍不如实操一次。
什么是自动化测试
这个概念的目的是为了节省资源、提升效率而引入的,这也变成近几年线上测试培训最引人瞩目的高频词,就连出去找测试岗位的工作,不知道自动化测试,都不好意思出去面试。且看百度百科的定义:
自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较。在此过程中,为了节省人力、时间或硬件资源,提高测试效率,便引入了自动化测试的概念。
如何学好接口自动化测试
这个作者可以好好的给大伙儿说道说道,首先要知道如何做接口测试,不管是利用工具还是编码,其原理都是一样的;然后再以工具实现一套接口自动化测试方案,最后再以编码实现一遍!可能就有同学问了,为啥不直接编码实现?嗯...从测试入门开始,并不是每个人都有精准的职业规划,譬如说作者,大多自动化技术都是由工具引入的,这也是大多数测试从业者的现状,一开始听说测试入门容易、工资高(相比其他行业)、甚至可以理解成钱多事少就蜂拥而至,那么真的是这样吗?数年之后,分化显得尤为明显。(嗯,作者是7年之后才开始自动化学习的,比较汗颜)越往后面测试岗无论是薪资还是级别都一道难跨过的坎。作者也时常宣导,先是会一套工具自动化测试解决方案,再去编码实现一套,都有点实现了工具内部核心功能,尽管没有UI那又如何,。
环境搭建
工欲善其事必先利其器,本篇是环境篇,不讲任何代码和实现逻辑
python环境的安装
版本选择python3.5以上,不要问为啥不是python2,再问就是python4
上python官网下载
先预告一下,在python开发之前,习惯使用虚拟开发环境,一是方便迁移,二是环境隔离。
至于虚拟环境的选择,一是python -m env /path;二是选择其他虚拟环境工具;三是Anaconda;后面再选择演示
萝卜白菜各有所爱,这里就不演示下载到安装的过程了,直接看效果,win系统为例调起cmd窗口输入python -V
可以看到当前python版本:Python 3.10.0
IDE开发工具安装
python有自己专属的开发工具,如Pycharm,它有两个版本,企业版和社区版
萝卜白菜各有所爱,作者爱用eclipse,因为作者还会半吊子Java,所以在eclipse开发更得心应手。
eclipse安装Pydev插件即可。
在Eclipse的help--install new software里, 点击ADD 名字输入Pydev,链接地址输入:pydev.org/updates 然后选择PyDev:dl.bintray.com/fabioz/pyde… ,另一个可以不选。就可以下载了,然后一步一步确认往下走。
安装完毕后,重启eclipse生效。
tips: eclipse与pydev的版本对应关系,作者建议初学者使用Pycharm,自己已经改变不过来了。
程序员的第一个程序Hello World。
在eclipse创建python项目,创建HelloWorld.py文件,输入:
print("Hello World!") 复制代码
右键执行,控制台输出: Hello World!
在cmd输入python进入ipython交互界面,输出print("Hello World!")回车:
在第一个方式里创建文件输入代码之后,回到cmd命令窗口,进入工程目录下,执行python HelloWorld.py,结果如下:
pip工具
前面只是完成了python环境到IDE工具的安装与部署,这对于环境本身是没有问题的,如果要做接口测试的话,可能还不够,需要依赖python的第三方库才能完成接口测试作业,那么pip这个安装工具就有用武之地了,就像npm于node一样。
pip install requests # 安装过程略; 可以指定安装版本requests==2.4.3,默认安装是最新版
requests就是完成接口测试的主要工具
使用效果演示:
import requests res=requests.get("http://www.baidu.com") print(res.text) 复制代码
请求百度网址得到结果是它的源码,这里就不贴出来了
总结
至此,接口测试python开发环境部署完成。
作者:我是你得不到的白月光
链接:https://juejin.cn/post/7025514163644399629