从高的角度看自动化测试

前言

高度,这个词我很早就被提及。 高度不够,把这个问题/东西拔高一些再看看,应该站在更高的位置看问题...这些是别人对我的评价,是面试过程中被问到的,是别人对我的指导/建议... 有的人会问一个普通打工的需要什么高度呢?不就是点点点的,不就是写if-else的... 对问题的思考其实就是优秀和普通的差别吧,尤其是来这里更为明显感觉到

我所了解的测试

前几天,看到虫师的一篇文章,是关于测试左移和测试右移的。左移就是测试提前介入,右移就是上线的跟进,这些都是接触过的,

测试并不是点点点,看看有没有bug,一般测试所在的团队都叫质量保障or质量管控部门,对整个项目质量的把控,而不是代码的把控。

因为之前一直在搞接口自动化,对接口自动化的流程有所了解,都是 数据准备--> 请求发起 --> 获取返回 --> 进行断言 --> 发送报告,然后结合jenkins搞下持续集成,结合代码覆盖率工具搞下覆盖率,

完成整个流程:研发提交代码 - > 静态代码检测 -->自动化用例执行 --> 结果报告 --> 代码覆盖率报告

一般自动化就这么样子的流程,然而恰恰就是这样形成了局限性,先说说每点都可以深入做很多东西,那么应该思考这么几个问题:

1. 易用性,是不是扔给其他人写用例,人家很容易上手;

2. 用例/数据的维护难度,这个是自动化用于项目比较头痛的问题;

3. 自动化框架是否可优化,支持多线程吗? 执行1000条用例花费多少时间;

4. 测试数据如何维护?是新建数据,还是使用固定数据?

然而这里缺失了最重要的环节,

数据和环境

1. 自动化的环境要和现在的功能测试环境脱离,需要重新搭建一套自动化环境;

2. 测试数据也要跟功能测试环境隔离,互不干扰,但又需要可以随时同步;

3. 数据是否可清洗,可备份,可回滚,可移植;

监控 1. 有没有合理的监控机制;

2. 更早的发现问题来止损;

3. 现有的架构是否对异常能灵活的降级;

4. 可以从线上数据监控来分析分析业务需求是否达到期望,是否可以促进项目的质量;

因此接口自动化的流程应该变成了:

环境搭建 --> 数据准备/清洗  --> 用例执行 -->  发送报告 -->  线上监控 -->  项目迭代

这样子就是从高了一层的角度去看质量,这样形成了闭环

结尾

测试可以从项目质量把控去要求研发做一些事情,如日志打印的规范,线上监控... 

这边了解到很多团队是让研发去写测试用例,然后测试去review用例,用例执行可能由产品或开发来执行,然后测试有足够的时间去做工程化的东西,

当有小需求过来,研发自测通过后,但担心会影响到其他业务,如果测试有足够好的自动化测试工具提供,这样就可以解放部分时间;

有重构项目,迁移项目的时候,自动化也可以节省很大部分的时间;

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏程序员互动联盟

微信为啥能同时支持这么多人在线?

微信——腾讯战略级产品,创造移动互联网增速记录,10个月5000万手机用户,433天之内完成用户数从零到一亿的增长过程,千万级用户同时在线,摇一摇每天次数过亿....

4864
来自专栏云计算D1net

如何建立云环境下的性能测试策略

生活在当下,企业不仅利用云计算服务降低基础设施成本,而且为整个过程带来更高的效率和灵活性。在这样的情形之下,必须建立起应用程序在云中测试的正确策略。性能测试在任...

36010
来自专栏BeJavaGod

文档!文档!文档!重要的事情说三遍!

项目一期基本开发完毕,包括后台管理系统以及提供给手机端的接口还有SSO,由于奔着敏捷开发去的,文档没有过多花时间去写, 当然了文档肯定有,开发人员写的自己能看懂...

3646
来自专栏技巅

系统架构和代码实现的高可控性

2304
来自专栏DevOps时代的专栏

顾宇:成功的微服务的技术特征及其反思

在上一篇文章里,我们介绍了如何定义一个微服务改造的成功,并介绍了落地成功的微服务组织结构有哪些特征。这篇文章我们来介绍一下成功的微服务的技术特征以及我们在微服务...

1062
来自专栏叁金大数据

数据库和数据仓库你应该知道的

Hive作为Hadoop生态圈重要的一员已经被我们所熟知,它作为一个基于Hadoop的数据仓库工具,用来做离线的数据分析工作。那么什么是数据仓库,它与我们经常使...

1352
来自专栏IT大咖说

为什么大数据需要敏捷思维?

内容来源:2018 年 09 月 08 日,宜信大数据技术专家卢山巍在“2018开源数据库论坛暨首届MariaDB中国用户者大会”进行《敏捷大数据实践与开源赋能...

2132
来自专栏Golang语言社区

如何让服务器从30台缩减到2台的:从Ruby迁移到Go语言

我们开发第一版的IronWorker已经是3年前的事了,是用Ruby写的,API基于Rails开发。我们没用多久就发展成了相当大的规模,很快我们就触及到了Rub...

39215
来自专栏DT乱“码”

转 微服务架构

2003
来自专栏IT技术精选文摘

日活跃数千万,10亿级APP大数据统计分析平台的架构演进

美图拥有十亿级用户,每天有数千万用户在使用美图的各个产品,从而积累了大量的用户数据。 随着 APP 的不断迭代与用户的快速膨胀,产品、运营、市场等越来越依赖于数...

6577

扫码关注云+社区

领取腾讯云代金券