为什么有人说做过开发的测试会是更加合格的测试

共 1361字,需浏览 3分钟

 ·

2021-06-27 02:58

在做软件测试之前,曾经有人一直跟我说,你应该先做一年开发,然后在转测试,代码能力强了,写代码做自动化测试的优势更大。
做过开发,逻辑思维能力强,对软件内部实现、功能需求、功能实现了解更深入,能根据自己的经验分析,那里容易出错,快速 定位找出bug出现的地方,更有针对性。

一个完整测试包含的内容

这里仅对面向C端的功能举例,测试内容优先级及是否全覆盖视具体情况而定


产品功能——对照产品文档

交互逻辑——交互图
用户体验
接口测试
性能测试
安全测试
并发测试
逻辑漏洞发现
兼容性测试
<1>一般测试人员都能进行前两种测试
<2>第三种依赖于经验但不限于经验
<3>第四种行业内使用最普遍
<4>第五第六种是专项测试
<5>第七到九是个人能力的体现

如果前四种做不好,那作为测试肯定不合格


接口测试、并发测试、逻辑漏洞发现是真正检验一个测试水平的表现.


难点:接口的设计是否合理

微服务的每个接口都是要按照严格的标准进行开发的,不管是容错性、功能健全性,还是实用性。


一般的测试只会使用一些如Postman的工具进行接口调用,更深一点,使用测试框架进行E2E、集成测试以及接口参数测试。


这里想表达的是测试人员要进行接口设计合格性审查,接口设计的合不合理、每个参数的使用是否方便、含义是否表达清楚,是否可扩展、是否兼容前期版本等,这些也需要测试。做过开发的测试会发现这些接口设计没有做好,会对整个服务的使用以及后面的测试环节带来影响。


并发和逻辑漏洞

这一点在金融类功能中比较常见。因为涉及到钱,所以企业对这一块非常重视。



哪些接口会出现并发,接口在什么情况下会出现并发,并发场景是什么、什么情况下的并发可能会导致问题。这些偏技术型的考虑以及实现,没有做过开发的测试很难做到。


逻辑漏洞就更难了。比如:订单的状态改变逻辑是否有漏洞,支付中的延迟会不会造成订单状态异常,服务端延迟会不会造成重复支付等。构想场景较困难,再找到匹配的工具和设计测试策略甚至架构就更难了。这里甚至需要自己开发服务进行测试。


兼容性测试

测试浏览器兼容性、手机系统版本兼容性、服务器版本兼容性等方面。


测试需要对浏览器的内核使用、版本更新内容,每款手机的系统特性、每个版本系统的更新内容,服务器每个版本的差异非常熟悉。


有些测试会说,不熟悉也可以进行测试。结果就是每个版本每种型号都测试,测试工作量非常大。


直接去手动或者自动化测试只是一种方式。


不管是手动测试,还是写测试用例进行自动化,亦或各种使用各种工具进行测试,都只是一种方式,目的都是验证需求的完备性。


最后:当技术发展越来越快,系统越来越复杂的时候,已经很难使用手动测试加一两个工具进行测试工作,不进行开发的测试,如何去保证整个系统的完备?


来自链接:

https://blog.csdn.net/Goodboynihaohao/article/details/80309906


-------- THE END --------

🍁

浏览 25
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报