完了,又火一个软件测试实战项目

前言

昨天刷测试之家,看到有自学软件测试的同学苦恼于看书学习之后,学过的知识转瞬即忘,并且没有上手的测试项目,不管是知识巩固还是面试求职,都比较艰难。

其实,初次接触技术工作,遇到这样的困难是正常的。

先说第一个:学过的知识转瞬即忘。技术工种,如果单纯学习了理论而没有上手实践,确实容易遗忘。

因此,很容易抛出第二个问题:没有人带路,没有人指引的时候,我该到哪里去上手实践软件测试技能。

如今互联网技术发达,实战的方法多种多样,你只是没有找到正确的方法而已。

这里,我稍稍提一下,相信以聪明的你,必定能举一反三,找到适合自己的实战方法。

在我苦苦的搜寻过程中,突然蹦跶出来一条引流广告,我随手点进去,误打误撞,发现了一个适合练手的接口测试实战,因此推荐给还是测试新手的你。

在这次实战中,我会用通俗易懂的例子告诉你什么是接口,什么是接口测试,并且我会用三个目录讲述如何搭建接口实战项目 & 进行一次接口测试。

1)要做接口测试,我们得搭建一套本地可以运行的接口环境。这次我选择了一个搭建容易,适合学习的系统——学生管理系统。

Python安装

这套管理系统是Python代码写的,因此需要Python环境。

安装挺无脑的,按照我提供的安装包和方法装好即可。

完了,又火一个软件测试实战项目_第1张图片

Postman安装

Postman是一款接口测试工具。同样是无脑安装,按照我提供的安装包和方法装好即可。

完了,又火一个软件测试实战项目_第2张图片

Pycharm安装

Pycharm是python语言编辑工具。无脑安装+3,不说啦~

完了,又火一个软件测试实战项目_第3张图片

项目部署

  • 项目解压后,用Pycharm打开项目

完了,又火一个软件测试实战项目_第4张图片

  • 在Pycharm的命令行窗口键入命令,安装项目依赖的模块

完了,又火一个软件测试实战项目_第5张图片

pip3 install -r requirements.txt -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
  • 在Pycharm的命令行窗口键入命令,启动项目
python run_server.py

tips:因避免2端口占用,我已修改项目的默认端口为8099,IP是本机127.0.0.1(可以在run_server.py中自行修改)

因我在py文件中修改过默认端口,可能会和后面要讲的接口文档里的URL不一致,但也无伤大雅~

完了,又火一个软件测试实战项目_第6张图片

如果运行时报下面的错(Django版本不兼容导致的)

Unhandled exception in thread started by <function check_errors.<locals>.wrapper at 0x0000024D934BDD08>
Traceback (most recent call last):
……
File "C:\Python37\lib\site-packages\django\contrib\admin\widgets.py", line 152
    '%s=%s' % (k, v) for k, v in params.items(),
    ^
SyntaxError: Generator expression must be parenthesized

则需跳转到报错路径下,将这个逗号去掉,然后重新键入python run_server.py命令启动项目。

完了,又火一个软件测试实战项目_第7张图片

  • 阅读项目内的接口API文档或接口清单,拿到接口

  • 在浏览器输入:IP:端口/api/departments/如果能获取到数据,证明服务启动成功。

完了,又火一个软件测试实战项目_第8张图片
在Postman中试一下,同样能拿到结果,没毛病。

完了,又火一个软件测试实战项目_第9张图片

以上,环境准备就绪。若遇问题,可以在下方留言评论。下一次,我们开始接口测试。

2)接口请求上手操练

启动项目,打开postman02 阅读接口文档中,关于添加学院信息的部分

完了,又火一个软件测试实战项目_第10张图片

发起请求(和上文的红黄蓝部分一一对应理解哦~)

http://127.0.0.1:8099/api/departments/
{"data":[        {"dep_id":"T01","dep_name":"Test学院","master_name":"Test-Master","slogan":"Here is Slogan"        }    ]

完了,又火一个软件测试实战项目_第11张图片

3)按照测试用例进行接口测试

此套项目提供了一份完整的测试用例,但如果你想掌握接口测试技能,建议你先阅读接口文档,然后自己写一份测试用例,再对照标准用例,查漏补缺,100%对你有益

测试用例

完了,又火一个软件测试实战项目_第12张图片

打开测试用例。该用例有四个大场景(查询、新增、更新、删除),共57条用例(查询学院信息28个,新增学院信息15个,更新学院信息11个,删除学院信息3个)。

在实际的接口测试中,当你写完测试用例后需要挨个执行用例,确保每一条用例通过,如果不通过,那你便发现了一个bug。

这里不会跟大家过每个用例,因为简单的接口测试真没多少难度,但凡你会用电脑,都可以依葫芦画瓢操作上手。

但如果你真遇到什么问题,也别怕,找博主,博主乐意为你解答(个人联系见公众号 程序员一凡)。

具体的测试方法见Postman截图(一般我们都使用Postman做接口测试):

GET请求(查询学院信息)

完了,又火一个软件测试实战项目_第13张图片
POST请求(新增学院信息)

完了,又火一个软件测试实战项目_第14张图片
PUT请求(更新学院信息)

完了,又火一个软件测试实战项目_第15张图片
DELETE请求(删除学院信息)

完了,又火一个软件测试实战项目_第16张图片

思考

在上手操练中,你是否有这样的烦恼:

  • 有些用例,操作得很烦

完了,又火一个软件测试实战项目_第17张图片
比如这三个,

在第一条用例中,你需要新建T01、T02学院;

在第二条用例中,你又需要删除其中一个学院才可以请求;

在很下面的第三条用例中,你又需要删除两个学院才可以请求。

想想如何解决?

当你熟悉业务后,你的用例其实可以改为:

第一步,验证T01,T02两个为空的场景;

第二步,新增T01,验证T01存在,T02不存在的场景;

第三步,新增T02,验证两个都存在的场景。

到最后,你的数据,是T01和T02都在,可以拿存在的数据去验证其他场景,比如更新和删除等,而不是像之前被动地跟着用例走,做了很多重复性工作。

  • 重复测试

当你辛苦测试一次之后,开发突然告诉你:我改了一点代码,需要你重新测试一次。

第一次你可能会接受,但次数多了之后,你100%会烦躁,觉得测试工作十分枯燥,毫无意义。

想想如何解决?

自动化测试。

这就是自动化测试的初衷——减少重复性工作(值得减少的),提高工作效率(减少精力投入)。

好了,到这里已经码了很多,下次再浅谈一下自动化测试,自动化测试可是当前企业招聘测试工程师技术考量的标准,悄悄的告诉大家会自动化更加有竞争力,薪资一、二线城市一般在15k-25k区间。更是迈向高级测试工程师的必经之路

你可以将上面的实战项目写进你的简历,在面试的时候娓娓道来,亦可以做项目迁移

你可能会问,什么是项目迁移?

说得简单点:练习完第一步和第二步,你已经掌握软件测试的理论和实践,你可以将上述项目学到的知识点,迁移到另一个项目上。

举三个简单的例子:

01

你是一名大学应届毕业生,想找软件测试的工作。

你可以找找身边的项目,比如学校图书馆系统,学校选课系统等等。这些都是你用过的、熟悉的系统,操练起来吧!

梳理功能点、写测试用例、找bug、记录bug,完成整个流程。

02

你是一名会计行业的打工人,想转行软件测试。

你可以拿公司的项目练手。比如公司的hr系统、记账系统等,总之,只要是公司的后台系统,都可以拿来操练。

03

你是一名环境专业的打工人,并且不会接触公司的后台管理系统,你日常的工作是检测各处的水质。

你可以仔细翻翻设备的使用说明书,它的每一个功能点都能成为你的测试点,即使它是一个硬件设备。

当然,上述只是几个具体的例子,但项目迁移的思维不变——知识皆可转换。

说白了,测试是一种思维,软件测试只是其中的一部分。

一如既往,做个总结

  • 善于发现并利用身边的项目,你将更快速的上手实战;
  • 如果你天天只是空想、只是忧愁焦虑,不付诸实践,还想吃这口饭,真的太难。

针对该项目,我无偿提供了全套教程(详见下方公众号)

完了,又火一个软件测试实战项目_第18张图片

除此之外,我还无偿提供一份我使用很久的、个人总结的、完整的web测试用例,为你练习提供指引和参考:
完了,又火一个软件测试实战项目_第19张图片

同时,我也给公众号粉丝提供了软件测试的全套学习资料,具体详细内容可自行查看哦!

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连!

完了,又火一个软件测试实战项目_第20张图片

你可能感兴趣的:(软件测试)