当前位置:网站首页>程序员成长第八篇:做好测试工作
程序员成长第八篇:做好测试工作
2022-07-05 12:51:00 【51CTO】
在大部分公司,程序员做完功能后,会有专门的测试部门同学来进行专业的测试。其实早期很多大公司都没有测试岗,是随着测试的技能越来越多,对能力要求越来越高,才专门有了测试的岗位。
但我觉得哪怕公司有测试工程师,作为研发人员,自己也要会测试。懂一些测试思维。想一想,如果在团队里,你每次提交的代码,反馈的bug最多。是不是也脸上无光?
我觉得以下几点,是每个研发人员都应该思考和锻炼的。
一、非正常情况思考。在惯性思维下,我们会在测试某个功能的时候都是按照正常值输入。比如提现功能。我们会测试一个正数。非正常情况是,我们输入一个0或者一个负数或者非数字,软件会如何反馈?前端是否有做控制?后端是否有做控制。只有两者都做控制才是正确的。
二、极端异常情况思考,比如弱网环境,会造成请求失败,是否需要重连?重连的机制是怎样?又比如输入项是个数组,正常情况我们会传入一个数组,非数组情况,我们做好处理外,还要考虑极端情况,比如传入一个非常大的数组,程序是会卡死崩掉,还是如何?这需要在写代码的时候就考虑好。
三、做好单元测试。单元测试是用来对一个模块、一个函数或者一个类来进行正确性检验的测试工作。一般我们会通过程序自动化来跑单元测试。如果出问题,我们一般会先跑一下单元测试,这个通过后,才去找问题原因。
四、做好功能测试。跑完单元测试后,再做功能测试。因为就算每个独立模块都正常,但合起来还是有很多情况会出现问题。每次修改都需要自己跑一遍做过的功能。一般功能测试我们都是在真实/测试环境里进行,模拟数据测试的情况不算。
五、要有一个自己的问题库,把所有自己遇到过的bug以及解决方案都放到问题库里。如果公司有问题库就更好,如果没有,你也可以跟主管提建议组建。有了这个问题库,以后同类型的问题,都可以比较快速的找到解决方案,避免同样的问题,每次都需要从头解决一遍。
其实做测试有时候比写代码还难,因为写的时候你都是按照正常逻辑去思考和编码的,但测试后的时候需要你从各个不同场景去思考,这种批判性思考、逻辑思考、系统思考的能力,但很值得投入精力去锻炼。
边栏推荐
- Flutter 绘制波浪移动动画效果,曲线和折线图
- Realize the addition of all numbers between 1 and number
- The Research Report "2022 RPA supplier strength matrix analysis of China's banking industry" was officially launched
- Halcon template matching actual code (I)
- PyCharm安装第三方库图解
- Concurrent performance test of SAP Spartacus with JMeter
- RHCSA4
- Yyds dry inventory JS intercept file suffix
- Four common problems of e-commerce sellers' refund and cash return, with solutions
- Comprehensive upgrade of Taobao short video photosynthetic platform
猜你喜欢
初识Linkerd项目
MySQL giant pit: update updates should be judged with caution by affecting the number of rows!!!
我在滴滴做开源
SAP UI5 DynamicPage 控件介紹
LB10S-ASEMI整流桥LB10S
leetcode:221. Maximum square [essence of DP state transition]
Natural language processing series (I) introduction overview
SAP UI5 DynamicPage 控件介绍
Put functions in modules
Concurrent performance test of SAP Spartacus with JMeter
随机推荐
Free testing of Taobao tmall API order and flag insertion remark interface
Simple page request and parsing cases
Natural language processing series (I) introduction overview
LeetCode20.有效的括号
聊聊异步编程的 7 种实现方式
Comprehensive upgrade of Taobao short video photosynthetic platform
A small talk caused by the increase of sweeping
Laravel document reading notes -mews/captcha use (verification code function)
About the single step debugging of whether SAP ui5 floating footer is displayed or not and the benefits of using SAP ui5
[Nacos cloud native] the first step of reading the source code is to start Nacos locally
百日完成国产数据库opengausss的开源任务--openGuass极简版3.0.0安装教程
Flutter 绘制波浪移动动画效果,曲线和折线图
潘多拉 IOT 开发板学习(HAL 库)—— 实验7 窗口看门狗实验(学习笔记)
Wechat enterprise payment to change access, open quickly
Leetcode20. Valid parentheses
Natural language processing from Xiaobai to proficient (4): using machine learning to classify Chinese email content
Taobao order amount check error, avoid capital loss API
155. Minimum stack
【服务器数据恢复】某品牌服务器存储raid5数据恢复案例
A possible investment strategy and a possible fuzzy fast stock valuation method