软件测试中自动化测试系统的建立
自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较。在此过程中,为了节省人力、时间或硬件资源,提高测试效率,便引入了自动化测试的概念。
测试管理人员和工程师们为了保证产品的质量和可靠性,从设计验证、生产线测试到设备维修诊断,从简单的测试应用到执行全套的产品特性测试,都离不开自动化测试系统的设计与构建。本文要讨论的下一代自动化测试系统,正是基于测试测量行业发展的趋势和工程师团队所面临的挑战。通过构建以软件为核心的模块化系统架构帮助工程师们以创新的思维提高测试效率,满足用户自定义的需求。
上个月参加MS技术大会,有关自动化系统的建立有些感受不断没有写出来,在这里和大家sharing下,共同提高吧。不过,下面的一些想法仅适合有自动化基础且需要深入发展的项目。
有关软件测试的自动化,大家是不是很快能想到,哇噻,这个工具很火那个工具很棒,这个数据驱动那个关键字驱动,这类适合公司自主研发那个适合间接购买?但当我们把工具的事儿搞定之后,除了培训倡导大家好好进修,天天用工具,竭力提高利用率覆盖率普及率之外,下一步应该怎么做,大家想透彻了吗?我们的自动化发展方向是什么?
无疑,自动化测试系统。偶不是拿MS的成果上来赚口水,而是结合项目目前的现状,的确需要这样,但不严格照搬别人的,本人开发的自动化工具,同时也有本人的特点,那就本人再想辙呗。
自动化测试系统是什么,包括哪些方面?在说这个之前,我先分析下本人所在项目上有关自动化测试方面的问题吧。
1、无特地的脚本管理工具,svn?css?不失一个好办法,但要运行脚本还得再启用一个工具,我们暂且临时写几条命令然后加到任务计划吧
2、脚本谁写的?什么时候写的?什么时候维护过?要在哪台机器上跑?什么时候跑?跑多长时间?演讲怎么发,发给谁?发哪些内容?不同的项目分有不同吧。ok,简单的工具能做到吗?写几行命令?谁写?谁来维护命令行?
3、脚本运行失败了怎么办,如何错误恢复?如何恢复干净的测试环境?如何重现错误?
4、自动化工具有人维护吗?谁维护过?实行版本控制了吗?有特地的自动化需求人员吗?有特地的开发和维护人员吗?兼容性做得怎么样?性能如何?还有没有改进的地方?谁有这个权利管?
5、脚天性够给开发人员做自测用吗?哪些适合给非测试人员用?
6、有没有脚本管理规范?脚本设想规范?脚本参考的案例设想规范?脚本编制规范?工具管理规范?自动化管理规范?机器管理规范?有没有自动化测试实验室?自动化环境配置方案?
ok,暂且这些问题吧,明显,仅凭一个自动化工具没法做到,要真正的把自动化用好,需要涉及到什么?人、脚本、邮件、网络、工具、机器、环境等等,那我们需不需要一个系统将这些统一管理起来,而不是零零散散,马马虎虎?这就是自动化测试系统了。
怎么做?舍不得孩子套不着狼,一个公司的自动化仅靠俩技术牛人几个有点小聪慧的测试人员就搞定了?仅靠几台2G的机器就搞定了?
关键是想法,是正确的方法论,是有决策能力的人的认可。但不可随便就行动,因为终究目前阶段大部分软件公司推行自动化就是高风险的东东,如果没有合理的分析、设想、验证,更重要的是没有实际的自动化基础就投入,必然是失败的。
做适合本人的自动化测试系统,跟软件开发一样,前期工做很重要、很重要。
文章来源于领测软件测试网 https://www.ltesting.net/