如何统计自动化测试用例的ROI 【投入产出比/投资回报率】
一、 自动化测试的投入有哪些?
1. 自动化测试的软件平台投入
自动化测试平台的开发时间,实施时间。
2. 自动化测试的框架开发投入+框架维护的投入
开发自动化测试脚本使用的框架,例如通过一些现有框架完成的测试基础,但是在现有的框架基础上,也需要提供测试投入,开发Excel的读写,PDF的读写,根据业务用例的情况开发一些定制化的框架。
3. 自动化测试的测试用例整理(功能测试用例)的投入
测试用例的整理要注意一些细节,例如
- 测试用例号或测试用例名,能唯一定位到该条测试用例的信息。
- 手工测试时间:手工执行这个用例的时间,这个时间根据用例类型的不同来配置,例如模块和模块的联调,中间耗费掉的测试数据准备时间,系统和系统的联调,涉及到两边系统的测试人员对接时间,外部依赖耗费的时间,都需要从手工测试时间中剔除。因为这些时间仍然存在,哪怕用了自动化脚本也一样需要提前准备数据,双方完成测试工作的对接,环境同样需要准备,外部依赖依然存在。
4. 自动化测试的测试脚本设计&维护的投入
自动化用例的设计: 包含完成这个脚本自动化需要准备的所有事项的准备时间,如前提条件的准备,自动化用到的测试数据的准备,自动化脚本的准备和调试直到通过的时间,甚至也需要清理测试数据的时间。
自动化用例的维护:自动化脚本运行过程中,碰到由于测试数据、测试环境、测试场景变更导致的维护成本。
5. 自动化测试用例的执行时间的投入
自动化测试用例用于每次回归测试执行的时间。一般来说是3种时间的总和: 数据/环境准备时间、数据/环境清理时间以及自动化测试脚本的执行时间。
6. 测试结果分析时间
二、 自动化测试的产出有哪些?
自动化脚本回归执行的次数越多,ROI的值就越高,意味着投资回报率高,自动化的意义被充分体现。根据不同项目的需求,统计的方式和维度也可以不同,例如:
1. 每个脚本的回归次数
2. 脚本执行过程中发现的缺陷个数
如何计算:
ROI = 收益/投入
如果单纯从回归测试执行次数的ROI来判断,那么公式应该是
ROI = ((回归测试用例总数*次数*手工时间)-(回归测试用例总数*开发时间+脚本维护成本))/(设计成本+脚本开发成本+脚本维护成本+问题分析成本)
如何统计自动化测试用例的ROI 【投入产出比/投资回报率】的更多相关文章
- jacoco统计自动化代码覆盖率
jacoco统计自动化代码覆盖率 1. 简介 1.1. 什么是Jacoco Jacoco是一个开源的代码覆盖率工具,可以嵌入到Ant .Maven中,并提供了EclEmma Eclipse插件,也可以 ...
- PowerShell调用jira rest api实现jira统计自动化
通过调用JIRA Rest web api实现统计自动化,首先进行登录模拟: $content = @{username='用户名';password='密码'} $JSON=$content|con ...
- Python自动化测试用例设计--自动化测试用例与手工测试用例区别与联系
1. 前言 手工测试用例是针对手工测试人员,自动化测试用例是针对自动化测试框架,前者是手工测试用例人员应用手工方式进行用例解析,后者是应用脚本技术进行用例解析,两者最大的各自特点在于,前者具有较好的异 ...
- 用java和junit编写app自动化测试用例
package myTest; import static org.junit.Assert.*; import io.appium.java_client.android.AndroidDriver ...
- 用python和unittest编写app自动化测试用例
import unittest import webdriver import time class Test(unittest.TestCase): @classmethod def setUpCl ...
- 28. Python编写自动化测试用例
接口文档已经提供了,requests库.unittest单元测试框架也已经介绍过,笔者相信读者朋友已经可以独立编写接口自动化测试用例了.但是有一些细节,我们需要聊一下.比如我们写登录接口测试用例,用户 ...
- web自动化测试用例编写的规范
1.一个脚本是一个完整的场景,从用户登陆操作到用户退出系统关闭浏览器. 2.一个脚本脚本只验证一个功能点,不要试图用户登陆系统后把所有的功能都进行验证再退出系统 3.尽量只做功能中正向逻辑的验证,不要 ...
- 用WebDriver实现基于jira过滤器视图的统计自动化
在Jira上通过过滤器我们可以做出多种视图,以方便统计我们想要收集的结果.比如:我想查看所有分派给我的任务.在Jira上,我保存了一个过滤器,叫做“分派给我的所有任务”.这个过滤器可以过滤出所有分配给 ...
- Python自动化测试用例设计--测试类型
1.前言 WEB自动化测试时候测试哪些类型,下面将介绍一下: 2. 测试类型 2.1 测试静态内容 静态内容测试是最简单的测试,用于验证静态的.不变化的UI 元素的存在性.例如: 每个页面都有其预期的 ...
随机推荐
- GO语言常用标准库02---os包
package main import ( "fmt" "os" ) func main() { //获得当前工作路径(当前工程根目录) dir, err := ...
- Mobileye高级驾驶辅助系统(ADAS)
Mobileye高级驾驶辅助系统(ADAS) Mobileye is the global leader in the development of vision technology for Adv ...
- ES6中的数组方法扩展
上一篇文章小编简单介绍了在ES6中,一些常用的方法和一些简单的应用,在这篇文章中,小编将针对ES6中数组常用方法进行扩展,相信经过这篇文章之后,每一位小伙伴下班时间会有所提前,就算从原来的996变成9 ...
- 面试一次问一次,HashMap是该拿下了(一)
文章目录 前言 一.HashMap类图 二.源码剖析 1. HashMap(jdk1.7版本) - 此篇详解 2. HashMap(jdk1.8版本) 3. ConcurrentHashMap ~~ ...
- SpringCloud-OAuth2(四):改造篇
本片主要讲SpringCloud Oauth2篇的实战改造,如动态权限.集成JWT.更改默认url.数据库加载client信息等改造. 同时,这应该也是我这系列博客的完结篇. 关于Oauth2,我也想 ...
- R语言--图形基本使用1
1 使用图形 1.1 交互式绘图 使用的是内置数据集:mtcars 画出散点图:plot(mtcars$mpg,mtcars$wt) 给图形加标题:title("车辆耗油与重量之间的关系&q ...
- 基于Istio构建微服务安全加固平台的探索
简介 An open platform to connect, secure, control and observe services. Istio 是一个由谷歌.IBM 与Lyft共同开发的开源项 ...
- Elasticsearch的配置学习笔记
文/朱季谦 Elasticsearch是一个基于Lucene的搜索服务器.它提供一个分布式多用户能力的全文搜索引擎,基于RESTful web接口,Elasticsearch是用Java语言开发的. ...
- Redis:银河麒麟arm服务器安装redis5.0.3,配置开机自启
百度网盘下载地址 链接:https://pan.baidu.com/s/1f2ghL2-0brPt0IodjfqOqQ提取码:9al1 解压tar包 #解压tar包 tar -xvf arm-r ...
- Java:Apache Commons 工具类介绍及简单使用
Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动.下面是我这几年做开发过程中自己用过的工具类做简单介绍. Commons简介 组件 功能介绍 commo ...