软件测试自动化的有效性、高效性
分享概要
在软件测试中工程师日常最应该考虑的问题就是如何用最少的成本找到最多的软件质量问题。这个问题的答案涉及到测试自动化的有效性(Effective)和高效性(Efficient)这两个方面。课题第一部分就测试的有效性讨论了软件多维测试、用户情景测试和软件产品的可测试性。第二部分就测试的高效性讨论了对代码覆盖率的管理、真正的软件自动化和对测试代码的分类。
目标收益:
通过对有效性和高效性两方面进行讨论,以帮助测试工程师找到工作的方向和目的,引发在产品周期的不同阶段对测试计划和策略的思考。同时也借用对课题的分组讨论,帮助分享各位在测试实战中的经验,通过课题举一反三。
课程大纲:
Topic 1课题简介 测试自动化之有效性(Effective)多维测试-计划-实施-分组讨论针对用户情景进行测试-用户情景测试概述-情景测试自动化的要求-分组讨论产品的可测试性-可测试性概述-对软件建模以增加可测试性本环节着重于软件测试自动化的有效性,对如何找到更多的软件质量问题进行讨论。首先从以多维测试为出发点,强调软件测试中方法学的重要性,以求拯救工程师于盲目无序的软件测试泥潭。然后转而进阶到用户情景测试,通过对用户需求的主次分析,帮助工程师看清测试方向。最后对产品的可测试性进行讨论,用建模的方法增加软件在不同层次上的可测试性,以达到商业级软件的质量要求。Topic 2课题简介测试自动化之高效性(Efficient)可管理的代码覆盖率-代码覆盖率概述-分组讨论-从代码覆盖的杂乱无章到井井有条-在产品周期的不同阶段对代码覆盖率的需求真正意义上的测试自动化-对软件建模以增加自动化o矩阵型o流动型-分组讨论对测试代码灵活分类-不同分类的定义以及意义-分组讨论本环节着重于软件测试自动化的高效性,对如何找到用最少的成本进行软件测试展开讨论。首先讲述如何用代码覆盖率减少软件测试中的弯路,并对代码覆盖率增加可管理性,防止工程师在覆盖代码上走入死路。其次对真正意义上的测试自动化进行阐述,帮助工程师走出自动手动测试(Automated manual test)的误区,把测试案例的生成交给机器以节省人力成本。最后对测试代码进行分类,并讨论其优缺点。通过认识到不同分类在软件开发周期不同阶段中的有点,来达到节省测试运行成本的目的。 |
分享大师
微软美国总部测试工程师
M.A.Sc,加拿大麦克马斯特大学软件工程系硕士。2007年加入微软商业软件部项目管理测试组,参与测试开发Project 2010。2010年加入微软服务器工具部管理自动化平台测试组,参与测试开发 Windows Server 8、Windows 管理构架及Windows PowerShell。
本网站标明原创的文章,版权归本站所有,欢迎任何形式的转载,但请务必注明出处