同济大学软件学院特聘教授朱少民谈《测试,从哪里来,到哪里去》

2024-03-26 02:18

本文主要是介绍同济大学软件学院特聘教授朱少民谈《测试,从哪里来,到哪里去》,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

朱少民:

各位嘉宾上午好!首先祝贺首届中国云测试行业峰会隆重开幕,这是Testin第一次举办这样一次大会,就像周老师讲的,Testin给我们提供了一个很好的交流平台,我们不同领域不同行业不同单位的测试人员大家齐聚一堂。

哲学上有三问 “我是谁,从哪里来,到哪里去”,今天这个题目是“测试从哪里来到哪里去”我想不会谈得很深奥,或者说我们不一定要清楚测试究竟从哪里来、到哪里去,特别是从哪里来可能大家不关心,不过大家关心的是到哪里去,将来测试向哪一个方向发展?今天讲有这个题目是有原因的,8月份看到这样一篇文章,歌手张翔,主要不是唱歌,原来是程序员、软件负责人,新技术探索者和布道者。不像一般理工男比较单纯,他在多个方面都有思考,而且思考也有深度。他写了一篇文章讲:软件测试人,你们正在逐渐失去一些东西。我看了几遍,引起我的思考。

有的网友也讲了,就像刚才提问同学讲的,现在大家太关注技术和自动化测试,但是质量究竟有没有保证,这个大家可能没有怎么想。就是你究竟达到什么样质量?或者全链路自动化测试可以完成,这个平台当然挺好的,那你测什么?测试依据是什么?有很多测试脚本,也不代表很好的覆盖或者能保证质量。人的精力是有限的,关注自动化技术,关注自动化脚本,那关注覆盖率就比较少了,所以从这个角度来讲,我们为什么要测试,或者做测试的目的是什么?这可能是我们初心。

无独有偶,另外一个叫高翔,两个姓不一样但是确实比较巧合,都在同一个月写了类似的一篇文章,他讲测试12年六道轮回后的初心能否找回?我们为什么要做测试,不仅仅是个人为什么做测试,我们单位为什么做测试,测试存在意义是什么?这个是值得大家思考的,所以从这两篇文章引出我今天的演讲题目——《测试,从哪里来,到哪里去?》。

我们主要是从三方面和大家一起交流,第一个是今天测试大概是什么样子、我们测试初心究竟是什么样的初心。最后谈谈我们测试的明天是什么样的。

同济大学软件学院特聘教授朱少民谈《测试,从哪里来,到哪里去》

 

今天的测试,在座的各位都有体会,你们现在想想:软件测试大概是什么样的?昨天吃饭的时候还在说今天的测试可能更忙、加班更多,我们每两周、每个月可能发布一个版本。早些时候,我们可能几个月发布一个版本,几个月有那么几天特别忙;现在,我们是一周要发布一次,可能每个礼拜都有一两天特别忙。谈到开发,我们总觉得开发一直进步的很快,因为我们大家也清楚这个软件日新月异,如果半年你不做软件开发或者软件测试,可能你觉得跟软件开发和测试就有点脱离了,就赶不上了。所以你看到开发的新模式有敏捷开发,有精益开发,DevOps这些开发模式。

技术方面更多了,编程语言日新月异,例如,我们看极客时间那个学习GO语言的人也是挺多的。除了这个,现在软件架构的改变,如微服务。还有人工智能、安全技术、容器技术,今天就有一个主题谈容器技术怎么在测试环境中的应用。

从环境来讲,Testin就是云计算的一个典型应用,当然也包括物联网、移动应用方面的测试。移动应用涉及面广,特别是像众测,大家每个人都可以提交Bug,这也是云测试重点领域之一。还有区块链、大数据和其他的技术。

我们测试究竟是怎么样的?我最近有篇文章畅想测试的未来,就有同学说:持续集成对整个质量有很好的作用。我们大家的确关注持续集成,不管你搞敏捷开发还是传统瀑布开发,大家都启动了持续集成或者说有的公司已经做得很好。所以,冒烟测试、静态分析等都会融合在持续集成里,另外也会倒逼开发改Bug,因为整个持续集成过程是挺透明的,有问题就及时暴露出来,这样的话,开发有时候想逃避问题也逃避不了。

另外,自动化测试应该是一个很热门的主题,今天大会分享这类主题也是比较多的。而且我之前做了一次调查,就是《软件质量报道》公众号做了一次调查,大家最为关注的就是自动化测试,这也很自然,因为我们搞计算机搞软件,为什么自己不自动化?为什么要手工呢?我们之前搞信息化,也是为了财务、税务等行业的业务处理自动化,那我们自己本身就是搞软件的,更应该自动化了。而且,测试跟开发最大的不同是回归测试方面,开发可能讲把新功能代码写了、不正确的代码改了,工作就做完了。测试,不仅仅要测试这些东西,还要扩展到其它区域进行回归测试,这对测试就是挑战,自动化是解决回归测试问题的最重要手段之一。

现在大家都建成了各种各样的测试平台。不考虑少数公司,70%、80%的公司都有测试平台,有的是自动化测试平台,包括自动化测试框架,和持续集成、开发系统集成起来,甚至和运维系统集成起来。当然,还有一些自动化没有做得很好,但是至少把测试数据、测试报告、测试结果很好地管理起来,包括缺陷管理,今天这方面来讲是比较成熟的。

其次,开源工具应用也越来越多,根据赛宝认证中心上个月发布的测试调查报告,显示开源工具使用占到60%到70%,其中测试管理工具是70%,而功能测试工具是60%。从调查结果看,大家越来越喜欢使用开源工具。开源工具有一个明显的好处,我们想要实现什么功能自己改就可以了,如果让某些商家改商业工具一个功能,那就不知道等到什么时候,特别是一个小公司提出一个需求,可能商家根本不理你,所以,大多数公司都会使用开源的测试工具。

静态分析相对来讲一劳永逸。静态开源工具,每天都可以用,虽然刚开始

这篇关于同济大学软件学院特聘教授朱少民谈《测试,从哪里来,到哪里去》的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/846999

相关文章

SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程

《SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程》本文详细介绍了如何在虚拟机和宝塔面板中安装RabbitMQ,并使用Java代码实现消息的发送和接收,通过异步通讯,可以优化... 目录一、RabbitMQ安装二、启动RabbitMQ三、javascript编写Java代码1、引入

Nginx设置连接超时并进行测试的方法步骤

《Nginx设置连接超时并进行测试的方法步骤》在高并发场景下,如果客户端与服务器的连接长时间未响应,会占用大量的系统资源,影响其他正常请求的处理效率,为了解决这个问题,可以通过设置Nginx的连接... 目录设置连接超时目的操作步骤测试连接超时测试方法:总结:设置连接超时目的设置客户端与服务器之间的连接

如何测试计算机的内存是否存在问题? 判断电脑内存故障的多种方法

《如何测试计算机的内存是否存在问题?判断电脑内存故障的多种方法》内存是电脑中非常重要的组件之一,如果内存出现故障,可能会导致电脑出现各种问题,如蓝屏、死机、程序崩溃等,如何判断内存是否出现故障呢?下... 如果你的电脑是崩溃、冻结还是不稳定,那么它的内存可能有问题。要进行检查,你可以使用Windows 11

Ubuntu 怎么启用 Universe 和 Multiverse 软件源?

《Ubuntu怎么启用Universe和Multiverse软件源?》在Ubuntu中,软件源是用于获取和安装软件的服务器,通过设置和管理软件源,您可以确保系统能够从可靠的来源获取最新的软件... Ubuntu 是一款广受认可且声誉良好的开源操作系统,允许用户通过其庞大的软件包来定制和增强计算体验。这些软件

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题

字节面试 | 如何测试RocketMQ、RocketMQ?

字节面试:RocketMQ是怎么测试的呢? 答: 首先保证消息的消费正确、设计逆向用例,在验证消息内容为空等情况时的消费正确性; 推送大批量MQ,通过Admin控制台查看MQ消费的情况,是否出现消费假死、TPS是否正常等等问题。(上述都是临场发挥,但是RocketMQ真正的测试点,还真的需要探讨) 01 先了解RocketMQ 作为测试也是要简单了解RocketMQ。简单来说,就是一个分

【测试】输入正确用户名和密码,点击登录没有响应的可能性原因

目录 一、前端问题 1. 界面交互问题 2. 输入数据校验问题 二、网络问题 1. 网络连接中断 2. 代理设置问题 三、后端问题 1. 服务器故障 2. 数据库问题 3. 权限问题: 四、其他问题 1. 缓存问题 2. 第三方服务问题 3. 配置问题 一、前端问题 1. 界面交互问题 登录按钮的点击事件未正确绑定,导致点击后无法触发登录操作。 页面可能存在

业务中14个需要进行A/B测试的时刻[信息图]

在本指南中,我们将全面了解有关 A/B测试 的所有内容。 我们将介绍不同类型的A/B测试,如何有效地规划和启动测试,如何评估测试是否成功,您应该关注哪些指标,多年来我们发现的常见错误等等。 什么是A/B测试? A/B测试(有时称为“分割测试”)是一种实验类型,其中您创建两种或多种内容变体——如登录页面、电子邮件或广告——并将它们显示给不同的受众群体,以查看哪一种效果最好。 本质上,A/B测

软件设计师备考——计算机系统

学习内容源自「软件设计师」 上午题 #1 计算机系统_哔哩哔哩_bilibili 目录 1.1.1 计算机系统硬件基本组成 1.1.2 中央处理单元 1.CPU 的功能 1)运算器 2)控制器 RISC && CISC 流水线控制 存储器  Cache 中断 输入输出IO控制方式 程序查询方式 中断驱动方式 直接存储器方式(DMA)  ​编辑 总线 ​编辑

【STM32】SPI通信-软件与硬件读写SPI

SPI通信-软件与硬件读写SPI 软件SPI一、SPI通信协议1、SPI通信2、硬件电路3、移位示意图4、SPI时序基本单元(1)开始通信和结束通信(2)模式0---用的最多(3)模式1(4)模式2(5)模式3 5、SPI时序(1)写使能(2)指定地址写(3)指定地址读 二、W25Q64模块介绍1、W25Q64简介2、硬件电路3、W25Q64框图4、Flash操作注意事项软件SPI读写W2