当前位置 : 主页 > 网络安全 > 测试自动化 >

自动化测试感悟

来源:互联网 收集:自由互联 发布时间:2021-06-19
1.自动化测试的优点 a)提升测试效率 b)弱化了测试人员个体差异对测试结果的影响 c)提升整个测试团队的技能水平 自动化开发本身就是一个双刃剑,它能够带来的好处显而易见,但是如

1.自动化测试的优点

  a)提升测试效率

  b)弱化了测试人员个体差异对测试结果的影响

  c)提升整个测试团队的技能水平

自动化开发本身就是一个双刃剑,它能够带来的好处显而易见,但是如果没有规划好自动化开发的进度,没有控制好自动化脚本的质量,往往会造成较多不必要的工作。

2.自动化脚本的关键

    要开发一套高质量的测试脚本,需要满足一下的特点:

  a)能够有效发现产品缺陷:

  注意:

    i)在开发测试脚本的时候,尽量少使用try/catch语句。这种语句会隐藏测试过程中的异常,测试人员容易被脚本运行成功的假象所迷惑。在开发脚本的时候,要记得脚本的目的是暴露问题,任何在运行脚本时抛出的异常都有可能是产品问题产生的,因袭需要避免在代码中隐藏问题。

    ii)一个好的自动化脚本开发人员首先必须是一个好的测试人员,只有对需要测试的产品非常熟悉,才能够开发出真正有效的测试脚本。

  b)有良好的可读性和错误日志,能够方便测试人员快速定位问题所在;

  提高脚本可读性的方法:

    i)遵守通用的代码编程规范;

    ii)讲测试计划的内容以注释的形式写到代码中;

    iii)测试数据和代码分离;

    iv)避免在脚本中使用硬编码数据。

  c)能够稳定、重复、独立的运行,经过严格的审查流程;

    运行独立性指的是每套脚本之间是独立的,可以按照任何顺序独立运行,并且在每套脚本内部,每个测试用例也是独立的,可以挑选部分测试用例独立运行。

    独立性的好处:

      i)如果用例之间关系密切,某一个用例执行失败可能会导致后续一系列用例执行失败;

      ii)缺少独立性会增加解决脚本问题的难度。当脚本运行失败,很难定位问题。

      iii)缺少独立性的话,很难选取部分case运行。

    保持独立性的方法:

      i)每个测试同理都有明确的环境设置和数据准备/清除的代码;

      ii)完成测试脚本之后,有意识的将脚本多次无序执行,确保脚本具有稳定的输出。避免单个case运行时没有问题,整套脚本运行时case间数据会有互相影响;

  d)经过充分的脚本检验流程。

3.制定自动化开发的时间

    在实际项目中,需要根据产品特点设定自动化脚本开发时间,可以从如下几点考虑:

  a)不要在产品不稳定的时候开发自动化;

  b)将测试脚本用于回归测试冲;

  c)首先开发通用task。

4.自动化测试的比例

    一般是在测试用例中选择一部分用来进行自动化,对于API测试,一般可以选择40%~60%具有代表性的测试用例进行自动化,对于UI测试,一般选择30%左右。

5.如何评估是否要做自动化

可以通过如下方式评估是否要做自动化:

脚本开发执行成本=极爱哦本开发工作量 + (平均调试脚本工作量 + 平均执行脚本工作量) x 产品周期执行次数

手工执行成本=平均手工执行工作量 x 产品周期执行次数

ROI = 脚本开发执行成本/手工执行成本

如果ROI比例在5以内,则说明需要用5倍的工作量去开发自动化脚本,即如果这套脚本执行5次才能回本,以后每次运行都算盈余。

网友评论