一 : 主要内容
二 : 什么是软件测试
在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程.
上面这是官话 .
在我们日常生活中 , 就有许多测试的行为 , 比如地铁站的金属检测仪 , 用于检测旅客是否携带了违禁物品 ; 再比如测谎仪 , 通过记录人在情绪变化时的各种生理变化 , 判断是否说谎了 , 等等 .
企业研发出一个产品 , 能直接上线给用户或者进行销售吗 ? 显然这不安全 . 用户为什么要花钱充会员 , 充游戏 , 买皮肤 , 购买产品相关的一些服务 , 显然是为了更好的用户体验 . 如果发现充了钱 , 用户体验不好 , 这就很不好了 , 轻则导致低口碑 , 重则给企业带来严重的经济损失 .
所以测试工作应用而生 , 测试就是验证软件产品特性是否符合用户的需求 ! 这个产品特性 , 包括功能 , 界面 , 兼容性 , 性能 …
其实软件测试是干啥的 , 就是找BUG , 看产品效果是否符合预期 . 在此过程中 , 也需要了解一些开发相关的知识 , 以便更好地进行测试工作 ; 同时需要掌握一定的代码开发能力 , 编写测试工具 , 提高测试效率 .
有人说测试有手就行 , 这对吗 ? 显然不讲武德 . 如果软件测试的门槛如此之低 , 企业又为什么会给你开大几十w的offer呢 ? 他可不是乱开的啊 , 一看是有备而来 .
三 : 软件测试和开发的区别
敏捷开发 : 敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发 . 在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征 . 换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态 . 其优势在于各司其职 , 分而治之 , 积少成多 , 循序渐进 , 慢就是快 .
总结 : 软件开发 , 主要是写代码的 ; 软件测试 , 就是测开发人员写的代码对不对 , 有没有实现需求 , 能否保证产品的质量 .
四 : 软件测试与调试的区别
五 : 软件测试岗位
- 软件测试工程师:工程师的主要工作一般包含需求分析、编写测试计划和测试方案、设计测试用例、执行测试用例、跟踪BUG、编写测试报告等;
- 测试开发工程师:根据项目的特点来开发一些自动化测试的脚本,或自动化测试的工具,或者是软件测试工作中用到的提高工作效率的小工具什么的,从而能够更有效地进行测试,提高软件产品的质量
- 测试开发工程师工作的目的就是为了更高效,更快捷地让测试工程师进行测试工作;测试开发岗位一般要求一定的开发能力,解决问题的能力尤为重要
- 性能测试工程师:针对系统进行性能测试,包括使用工具和编写性能自动化测试脚本。
- 安全测试工程师:主要分析产品可能会出现的安全问题,做各个方面的渗透测试,提高产品的安全性
- 其它:系统测试工程师,嵌入式测试工程师…
六 : 如何做好一名测试人员
我是卡卡西 , 我立志成为一名优秀的测试人员 .
我具有良好的沟通能力 , 能够很好的与开发人员进行交流 , 出现问题时能够心平气和地解决问题 , 而不是互相抱怨 , 导致项目进度落后 ; 我具备快速学习的能力 , 对于不同的场景 , 能够及时应对 , 或者说 , 我一定会通过学习新内容 , 新知识 , 通过交流沟通或请教大佬 , 从而解决工作中遇到的难题 ; 我具备一定的开发能力 , 这让我能更好地进行测试工作 , 提高开发的效率 ; 我掌握了一定的自动化测试技术 , 具备良好的测试用例设计能力 , 同时还会不断学习提高相关的技能 . 我坚信测试人员是产品质量非常重要的一段关卡 , 我深知使命重大 , 我会做好每一件该做的事 , 担好自己的责任 .
长风破浪会有时 , 直挂云帆济沧海 !