暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

闲谈软件测试

测试茶馆 2020-01-06
192

        历史的车轮是不断前进的,新的技术为我们提供了更多的思考和做事方法,软件测试的历史并没有多久,但是也经历了从粗犷到精细的发展历程。

        初期的软件测试是狭义的,基本等同于调试,也常常由开发人员自己完成这部分工作。

        上个世纪80年代,由于软件趋向于大型化、高复杂度,这个时候人们们开始意识到软件质量的重要性,于是慢慢的人们将质量概念引入软件工程,测试则开始承担软件质量保证的主要职能,而软件测试开始成为一个专业。可以参考Bill Hetzel的《软件测试完全指南》。

        十几年后的某一天,我国通过一条64K的国际专线介入了国际互联网,中国互联网时代开始,然后论坛、门户网站接踵而至,标志着我国软件行业的开始,而软件测试经过了十几年的生长,到了1995年仍是几乎完全手工测试,测试效率非常低,然后有一小部分人开始觉醒了,意识到了工具的重要性,慢慢开发出了一些小的辅助工具用来夜间执行,这已经让他们兴奋不已,也有些人开始嗅到了商机。

        1998年QTP发布了,但最开始QTP主要应用于电子商务领域,1999年马云成立了阿里巴巴公司,从这个时间点开始,中国软件行业步入了快车道,一步步形成了百花齐放的局面。

        我国的软件行业已经有二十几年了,也从早期的论坛、博客发展到了现在的无人驾驶、人工智能,从传统的瀑布式开发逐步转向敏捷开发,从最早的结构化转向了前后端分离,新的技术每天都在诞生。

        软件测试领域也有一部分这样的人,在不断的深耕技术,比如测试左移、AI测试、精准测试、深度遍历等,最终测试行业是不是也会重归于开发。

        第一次了解精准测试是在前一段的一个会议上,听了星云测试的演讲,其实我是比较蒙的,大概意思是要从代码层面控制缺陷,深入到代码层面进行测试,其中谈到了数据追溯、代码插桩、测试范围计算、自动采集程序执行逻辑等,要做到精准测试我觉得是非常困难的,精准测试其实要求不高,主要是费钱,好处就是可以得到风险可控,效率飞快,应用于敏捷测试绝对是个利器,但是现在的敏捷项目大部分都在减少投入和缩短时间的坑里出不来,有不少人认为“敏捷可以节省时间”,那我觉得这是误解了,敏捷应对的是快速上线,面向的是价值,并不是用更少的钱、人、时间,去完成更多的事,可能是要用更多的钱、人去完成这个事,至于时间,敏捷的基础准备工作可能远大于传统的瀑布模式。精准测试的过程非常复杂,最终我也只是解析出了精确测试的概念,是否应该依据生产使用情况来进行有重点的测试,比如几年都无人使用的功能,每次回归是否有必要,是否针对重点交易进行深度测试(单元、自动化回归),将资源投入到更重要的事情当中。

        相对于精准测试,AI测试的做法则是五花八门,有用智能深度遍历的,有用高度封装控件识别的,有用测试前移驱动的,还有行业定制化的AI测试(比如金融行业),前段时间了解了下百度MTC的AI测试,有几点收获,他们的AI测试基本基于测试左移,大致流程是,先根据业务需求和UI图,使用(预定义的)自然语言重新描述需求,此处作为需求梳理或者规则梳理,当规则梳理完毕则可以自动生成测试用例(此处为自动化测试用例),当APP开发完毕,配置APP信息即可自动执行测试用例,其实我知道,真正执行的时候或许并没有如此顺利,但是这个想法的提出人真的很不一般,只有领域内的佼佼者才能有这么清新的思路,我是真的拜倒了。这样的测试方案给我很大启发。我也曾研究过深度遍历和人工智能,后来发现,AI测试需要极大的精力和非常精深的专业知识才能做出来一些成绩,对于我们这样做项目的实在不划算,只有真正做研究的那部分人才能开拓出新的道路。话虽如此,但是想想当前的计算机行业挤掉了大部分人的饭碗,也许不久之后,机器学习也会挤掉部分计算机从业人员的饭碗,残酷的现实是,低端的技术人员和纺织厂的女工并没有多大差别,被机器取代也许不是那么的难以想象,测试行业终归是从开发分化出来的,虽然演变了很多很多,但是殊途同归,为了减少非生产性支出,是不是终归会变成管理和技术两种纯粹的职业。

        写了这么多,很多都是废话,各位看官们辛苦了,长路漫漫,新的一年,还希望大家事业顺利,家庭幸福!!!



如果小伙伴们对软件测试的发展过程有兴趣,推荐一篇文章:https://www.cnblogs.com/sallyzhang/p/6714264.html

文章转载自测试茶馆,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论