驶入快车道测试驶入快车道
软件测试是软件生命周期的一个主要阶段。软件测试,尤其是测试自动化技术属于目前国际软件界最有争议,亟待发展的技术。所谓自动化测试就是期望能够经过自动化测试工具或其它手段,根据测试工程师的预定计划进行自动的测试,目标是减轻手工测试的劳动量,从而达成提升软件质量的目标。
测试自动化包括到测试步骤、测试体系、自动化编译、连续集成、自动公布测试系统和自动化测试等方面的整合。也就是说,要让测试能够自动化,不但是技术、工具的问题,更是一个企业和组织的文化问题。
优势不言而喻
自动化测试相对于手工测试,其优势关键表现在:对新版本实施回归测试、更多更频繁的测试、替换有困难的手工测试、含有一致性和可反复性、更加好的利用资源、处理测试和开发之间的矛盾等等。
对新版本实施回归测试 对于产品型的软件,每公布一个新的版本,其中大部分功效和界面全部和上一个版本相同或完全相同,这部分功效尤其适合于自动化测试, 从而达成测试每个特征的目标。
更多更频繁的测试 每款产品面向市场前全部会有一个公布周期,在测试期间是天天或每两天全部要公布一个版本供测试人员测试。假如一个系统的功效点有几千甚至上万个,手工测试就显得很耗时和繁琐,这么必定会使测试效率低下。
替换困难的手工测试假如用户有些非功效性方面的测试:如:压力测试、并发测试、大数据量测试、瓦解性测试,用手工测试是不可能达成的。
含有一致性和可反复性 因为每次自动化测试运行的脚本是相同的, 因此每次实施的测试含有一致性, 手工测试是极难做到的。因为自动化测试的一致性,很轻易发觉被测软件的任何改变。
更加好的利用资源 理想的自动化测试能够按计划完全自动的运行,在开发人员和测试人员不可能实现二十四小时轮番工作的情况下, 自动化测试能够胜任这个任务。这么充足的利用了企业的资源,也避免了开发和测试之间的等候。
处理测试和开发之间的矛盾 通常在开发的末期,进入集成测试阶段, 在每公布一个版本的早期,测试系统的错误比较少,这时开发人员有等候测试人员测试犯错误的时间. 实际上在叠代周期很短的开发模式中,存在更多的矛盾, 但自动化测试能够处理其中的关键矛盾。
预防自动化测试误区
即使自动化测试能为开发企业带来很多好处,但依然有部分局限,我们应该尽可能避免以下误区。
期望自动化测试能替代手工测试 我们永远不能期望自动化测试能够替代手工测试, 毕竟自动化测试没有些人工更智能。
期望自动测试发觉大量新缺点 一样不能期望自动化测试去发觉更多新的缺点, 事实证实新缺点越多,自动化测试失败的几率就越大。
技术、组织和脚本维护 自动化测试的推行,存在很多阻力,比如是否受到重视,是否成立一个专门的测试团体,是否有这么的技术水平,对于测试脚本的维护工作量很大,是否值得维护等等问题全部必需考虑。
避免不适合的自动化测试
自动化测试并不是适合全部的企业,和全部的项目。
定制型项目 为用户定制的项目,维护期由用户方负担的,甚至采取的开发语言、运行环境也是用户尤其要求的,即企业在这方面的测试积累就少,这么的项目不适合进行自动化测试。
短周期的项目 假如项目周期很短,测试周期也很短,那么该项目就不应该做自动化测试。花大量精力建立的测试脚本,假如不能得到反复利用就是一个浪费,也是不现实的。
业务规则复杂的对象 对业务规则复杂的对象,有很多的逻辑关系、运算关系,自动化测试就极难进行。
美观、声音、易用性测试 界面的美观、声音的体验、易用性的测试等属于主观方面的,而不是客观的,因此也只能经过人工测试。
测试极少运行 假如测试极少运行,对自动化测试就是一个浪费。自动化测试就是要不停循环地运行才有效率。
软件不稳定 假如软件运行不稳定,则会因为这些不稳定原因造成自动化测试的失败。只有当软件达成相正确稳定,没有界面性严重错误和中止错误才能开始自动化测试。
包括物理交互 工具极难完成和物理设备的交互,如刷卡的测试等。
选择适合的自动化测试
自动化测试之因此能在很多大企业实施起来,关键是它含有适合自动化测试的特点和高的投资回报率。
产品型项目 每个项目只改善少许的功效,但每个项目必需对那些没有改动过的功效进行反重复复的测试。这么的测试完全能够自动化, 同时能够把新加入的功效的测试也慢慢地加入到自动化测试当中。
增量式开发、连续集成项目 因为这种开发模式是频繁的公布新版本进行测试,也需要利用自动化测试来频繁的测试。
能够自动编译、自动公布的系统 要能够完全实现自动化测试,必需能够含有自动化编译,自动化公布系统进行测试的功效。 当然,不能达成这个要求也能
驶入快车道测试驶入快车道 来自淘豆网m.daumloan.com转载请标明出处.