什么是软件测试
我们要做软件测试工程师,必须要对自己的行业有了解。什么是软件测试呢?绝不是点点点发现问题这么简单的点读机。
一句话概括软件测试,就是使用手工或自动化的方式,检测软件的预期结果和实际结果的差异。如果有差异,就是有bug,我们测试的主要工作就是找bug。
软件测试的发展
软件测试不是一开始就有的,而是根据市场的要求应运而生的。
软件测试的发展经历了的四个阶段。
阶段1:程序员自己测试(思维定式:不会按照客户的思想)
阶段2:非专业人员测试(找不到深层次的bug)
阶段3:专业人员测试(测试延后)
阶段4:专业测试人员(开发与测试并行)
软件测试师一个细腻的过程。贯穿于软件项目的整个生命周期。随着市场对软件质量的要求不断提高,软件测试变的越来越重要。相应的软件测试工程师的地位和待遇,也将处于双高的状态。
而且开发人员并不能做好测试,因为他们不懂得测试的理念。且不具备测试的经验和方法.
经过这么多年的发展,软件测试的现在的就业环境就是功能测试比较饱和,但是高级软件测试人才需求还是比较大的。
软件测试的重要性
我们发现bug,开发人员解决bug,其实都是为了产品可以更好的上线。我们可以看一个例子就知道上线的产品有bug会多可怕。
滴滴打车的一个案例,滴滴打车一开始为了占据市场,给用户和司机都发红包来吸引使用。
起初,司机很聪明,拿俩手机,自己下单自己刷,两端的红包都能得。然后滴滴出了一个机制,方圆多少公里内,随机派单,就把这个现象遏制住了。但有的司机更聪明,把车开到山里,开到草原上,开到沙漠里,拿手机自己下单,方圆10公里就这1辆车,就自己接单了。(当滴滴知道这个漏洞时,已经亏损几个亿了)
通过这个案例,我们应该知道软件测试的责任和重要性了。因为Bug漏洞会影响公司效益(越大公司越怂,因为怕大型亏损)
这也说明,作为测试工程师,逻辑思考能力要很强,考虑问题要具有全面性,不要让用户有可乘之机,这是功能测试最大的魅力,也是最重要的技能点,也是薪资比其他行业高的原因
软件开发模型之瀑布模型
瀑布模型是所有其他开发模型的基础。优点:每个环境步骤都很清晰,方便对每个环节进行把控,适合需求稳定的产品研发
缺点:过分依赖需求调查,且上线周期长,流程不可逆,一旦需求改变就要重新走流程。因为测试活动是在开发人员完成代码后才介入,会将BUG放大,牵一发而动全身,导致项目延期,甚至失败 ☆
瀑布模型改良:在每个阶段融入小型迭代,也就是评审环节
传统行业采用瀑布模型。
软件开发模型之敏捷模型
传统的瀑布模型周期拉的太长了,互联 行业采用的是敏捷模型,也叫敏捷开发。
所谓敏捷开发,就将一个项目拆分成多个子项目,每一个迭代周期完成一个子项目
1期迭代:需求分析 – 设计 – 实现 – 发布1.0版本 – 产生价值
2期迭代:需求分析 – 设计 – 实现 – 发布2.0版本 – 产生价值
3期迭代:需求分析 – 设计 – 实现 – 发布3.0版本 – 产生价值
可以看出来,敏捷开发的特点就是,不是全部完成后发布,而是分批依次发布
我们可以举一个生活中的例子:需求是客户想要一个代步工具,痛点是走道太累
敏捷模型:
1.0版本做自行车
2.0版本做电动车
3.0版本做摩托车
4.0版本做小汽车
5.0版本做自动驾驶小汽车
我们可以看到,敏捷模型的优势就是:基于一个基础不断优化,体验好,而且永远有爆款问世,一个版本接一个版本,有市场竞争力
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!