IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> ?软件测试之支付宝大佬心中的完美测试 -> 正文阅读

[开发测试]?软件测试之支付宝大佬心中的完美测试

  大学毕业那会,工作特别不好找,偶然的机会进入了软件测试行业。

  头两年主要在小公司做软件测试,软件测试是主流之外的领域,测试人员不受重视、加班加点,测试也主要以手工为主,这应该是当时业界的主要氛围。有些善于编程的人也相继转做开发,因为做开发影响力更大。我当时也一度考虑转开发岗位,后来想一想测试行业还处于初级阶段,一定会被越来越重视,有幸进入了支付宝,成为一名测试开发工程师。

  在支付宝工作的几年中,经历了大大小小的项目,无论是质量、性能、安全、稳定等都要求极高。多年的工作实战中,总结了一些个人感悟和大家分享:

upfile1633656059703.jpg

  1、当一个产品在概念上还没有成型的时候,不要过度的去考虑质量(因为如果测试方法不当,却会扼杀一个有可能成功的产品,至少会拖慢这个产品的速度),而是要以最快的速度投入市场验证,通过不断的迭代完善需求。注意这里是“不要过度”,而不是“不考虑”。初期要找到质量和快速发布的一个平衡点。风险总是相对的,如果产品太长时间没有测试投入,代码的质量会越来越差,后期也很难去改进,基本都会进行重构,这样的质量债会拖慢产品的发布。

  2、质量不是测试出来的,如果产品最开始设计的时候就是错的,那这个产品无论如何测试也不会变的正确,除非推翻重来。虽然质量不是被测出来的,但是未经测试也不可能开发出有质量的产品。质量不等于测试,质量是把开发和测试放到一起,放在搅拌机里搅拌,直到不能区分彼此的时候,你就得到了质量。

  如果开发是开发,测试是测试,永远得不到质量。

  3、一个团队如果想能编写出高质量的产品,唯一途径是全体成员共同对质量负责,包括产品经理、开发人员、测试人员等。我认为,达到此目标的最好方式是把测试当做产品的另一种功能,测试功能的地位应该与真实客户看到的其他功能同等重要。

  4、测试团队一定要提高对人员招聘要求,即懂得开发人员的技能又懂得测试人员的思维。同时推进开发人员负责测试,开发人员负责质量,测试团队负责帮助开发团队搞定这两项任务。质量从来就不仅仅是一些测试人员的问题,每个写代码的开发者就是测试者,质量由开发测试组合共同承担。如果你的职位上有测试的字样,你的任务就是使那些职位上没有测试的人可以更好的去做测试。

  随着团队不断壮大,你会发现测试仅仅是工作的一部分,我们还会负责测试框架,缺陷工具等的开发工作,我们所做的非测试的工作对生产力的提升产生了巨大的影响力。

  5、不同工程师的角色定位

  测试工程师:把用户放在第一位思考,代表用户利益。组织整体质量实践,构建端到端的自动化测试。

  测试开发工程师:工作重心在可测试性和通用测试框架的开发上,也会编写单元或者集成自动化测试。

  软件开发工程师:关注客户使用功能的开发实现上。

  6、对于所有类型的测试,能够自动化,并不需要人脑的睿智与直觉来判断(比如界面是否漂亮),那就应该实现自动化。自动化的粒度要细,可以根据实际情况分层实现:单元测试、集成测试、端到端测试。

  我心中的测试乌托邦

  一个完美的研发过程是在怎样进行的呢?

  测试先行,在开始写代码之前,一个开发人员就要去思考如何测试即将编写的代码,这些测试代码会作为产品代码的一部分与功能代码放在一起,最适合且最有资格去做的就是编写代码的开发人员。在编写测试代码的过程中需要依赖外部基础设施服务,比如一个测试用例需要从远程数据源读数据,此时需要mock数据,在理想的情况下,这些服务都已经开发好,开发人员随时可以使用。

  但是对于人的思维方式而言,在编写功能代码的时候与编写测试代码迥然不同,功能代码思维模式是创建,重点考虑用户、使用场景、数据流上;测试代码主要思路是破坏。理想情况下,需要雇佣不同的角色,一个写功能代码,一个写测试代码。产品的每个功能对应一个开发人员,整个产品配备一定数量的测试开发人员,测试开发人员开发测试工具与框架帮助功能开发人员解决单元测试问题,同时也编写一定的单元和集成测试代码。

  除了上述的开发,测试开发人员,还需要第三种角色,真正关心用户的角色——测试员,把用户放在第一位思考,代表用户利益,组织整体质量实践,构建端到端的自动化测试。三种角色分工合作,达到完美,相互之间也可以平等合作。

如需了解更多测试技术信息请关注:深圳多测师软件与技术服务有限公司

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-10-11 17:48:24  更:2021-10-11 17:49:22 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 2:47:05-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码