真实企业做自动化测试做法,从测试用例到测试报告...

news2024/11/8 19:30:25

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

首先,谈谈在测试自动化的情况下,带有图形界面的产品的测试用例的设计问题。因为图形界面的输出显示不是很容易做到测试结果自动化比较,所以一般的做法是把图形界面输出的部分单独建立测试用例,以手工运行。

而所有非图形输出则可进行自动测试。

一些自动化测试的例子:

1、测试个案(或称为测试用例)的生成

用编程语言或更方便的剧本语言(script language 例如Perl等)写出短小的程序来产生大量的测试输入(包括输入数据与操作指令)。

或同时也按一定的逻辑规律产生标准输出。输入与输出的文件名字按规定进行配对,以便控制自动化测试及结果核对的程序易于操作。

这里提到测试个案的命名问题,如果在项目的文档设计中作统一规划的话,软件产品的需求与功能的命名就应该成为后继开发过程的中间产品的命名分类依据。

这样,就会为文档管理和配置管理带来很大的方便,使整个产品的开发过程变得更有条理,更符合逻辑。任何新手半途加入到开发工作中也会更容易进入状态。

2、测试的执行写控制

单元测试或集成测试可能多用单机运行。但对于系统测试或回归测试,就极有可能需要多台机在网络上同时运行。记住一个这样的原则,在开发过程中的任何时候,如果你需要等候测试的运行结果的话,那就是一个缩短开发时间的机会。

对于单个的测试运行,挖潜的机会在测试的设置及开始运行和结果的对比及显示。有时候,需要反复修改程序,重新汇编和重新测试。

这样,每一个循环的各种手工键入的设置与指令所花费的时间,加起来就非常可观。如果能利用make或类似的软件工具来帮助,就能节省大量的时间。

对于系统测试或回归测试这类涉及大量测试个案运行的情况,挖潜的的机会除了利用软件工具来实现自动化之外,就是怎样充分利用一切硬件资源。往往,就算是在白天的工作时间内,每台计算机的负荷都没有被充分利用。

能够把大量测试个案分配到各台机器上去同时运行,就能节省大量的时间。另外,把大量的系统测试及回归测试安排到夜间及周末运行,更能提高效率。

如果不购买商品化的工具的话,应当遵从正规的软件开发要求来开发出好的软件测试自动化工具。

在实践中,许多企业自行开发的自动化工具都是利用一些现成的软件工具再加上自己写的程序而组成的。这些自己开发的工具完全是为本企业量身定做的,因此可用性非常强。同时,也能根据需要随时进行改进,而不必受制于人。当然,这就要求有一定的人力的投入。

在设计软件自动测试工具的时候,路径(path)控制是一个非常重要的功能。

理想的使用情况是:
这个工具可以在任何一个路径位置上运行,可以到任何路径位置去取得测试用例,同时也可以把测试的结果输出放到任何的路径位置上去。

这样的设计,可以使不同的测试运行能够使用同一组测试用例而不至于互相干扰,也可以灵活使用硬盘的空间,并且使备份保存工作易于控制。

同时,软件自动测试工具必须能够有办法方便地选择测试用例库中的全部或部分来运行,也必须能够自由地选择被测试的产品或中间产品采作为测试对象。

3、测试结果与标准输出的对比

在设计测试用例的时候,必须考虑到怎样才能够易于对此测试结果和标准输出。输出数据量的多少及数据格式对比较的速度有直接影响。

而另一方面,也必须考虑到输出数据与测试用例的测试目标的逻辑对应性及易读性,这将会大大有利于分析测试所发现的不吻合,也有利于测试用例的维护。

许多时候,要写一些特殊的软件来执行测试结果与标准输出的对比工作,因为可能有部分的输出内容是不能直接对比的(比如,对运行的日期时间的记录,对运行的路径的记录,以及测试对象的版本数据等),就要用程序进行处理。

4、不吻合的测试结果的分析、分类、记录和通报

上一点所谈到的,用于对测试结果与标准输出进行对比的特殊软件,往往也同时担任对不吻合的测试结果进行分析、分类、记录和通报的任务。

“分析”是找出不吻合的地方并指出错误的可能起因。“分类”包括各种统计上的分项。

例如,对应的源程序的位置,错误的严重级别(提示、警告、非失效性错误、失效性错误;或别的分类方法),新发现的还是已有记录的错误,等等。

“记录”,是按分类存档。“通报”,是主动地对测试的运行者及测试用例的“负责人”通报出错的信息。

这里提到测试用例的“负责人”的概念。是用以指定一个测试用例运行时发现的缺陷,由哪一个开发人员负责分析(有时是另外的开发人员引进的缺陷而导致的错误)及修复。在设立测试用例库时,各用例均应有指定的负责人。

最直接的通报方法是由自动测试软件发出电子邮件给测试运行者及测试用例负责人。邮件内容的详细程度可根据需要灵活决定。

5、自动测试与开发中产品每日构建的配合

自动测试应该是整个开发过程中的一个有机部分。自动测试要依靠配置管理来提供良好的运行的环境,同时它必须要与开发中的软件的构建紧密配合。

在开发中的产品达到一定程度的时候,就应该开始进行每日构建和测试。这种做法能使软件的开发状态得到频繁的更新,以及及早发现设计和集成的缺陷。

为了充分利用时间与设备资源,下班之后进行自动的软件构建,紧接着进行自动测试(这里多数指的是系统测试或回归测试),是一个非常行之有效的方法。

如果安排得好,到第二天上班时,测试结果就已经在各人的电子邮箱里面面了,等待着新的一天的开发工作。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

只要你肯努力,就一定能够达到自己的目标;不要因失败而气馁,要相信自己的实力和坚持才是成功之路;别人没有看到你的成长并不代表你没有进步,自己的努力和收获才是最重要的。

只有敢于挑战自己,才能迎接更好的未来;只有不停地努力奋斗,才能实现自己的梦想;只要坚持不懈,就一定会收获成功的喜悦。相信自己,勇往直前!

只有敢于冒险,才能创造奇迹;只有不断进取,才能走向成功的巅峰。在前行的路上,永远不要停下脚步,勇往直前,坚定不移,最终你会发现,自己已经成为了那个你曾经想成为的人。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/683690.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SAP MM 组织结构配置

1.定义公司代码 创建公司代码一般来说是财务去配置,但是我们需要去有一个基本的了解,这样,你才能理清公司代码和MM 组织的关系 配置:SAP IMG Enterprise Structure -》Definition -> Financial Accounting -> Edit, Copy, …

深度学习(26)——YOLO系列(5)

深度学习(26)——YOLO-v7(5) 文章目录 深度学习(26)——YOLO-v7(5)絮絮叨叨1. conv和BN的融合2. 3*3卷积的替换(1)1*1卷积有什么作用?&#xff08…

解决方案 | 照明行业数字化营销CRM平台

“数字中国”作为二十大报告的“关键词”,也成为各行各业的高质量发展的主旋律,历史悠久的中国照明产业也积极拥抱“数字化”,以驱动高质量发展 。作为照明行业的领军企业,某照明行业客户很早就意识到企业数字化转型的重要性&…

Spring事务源码详解-spring原码(二)

上篇文章介绍了事务开启,前面介绍了解析adviors。 spring事务源码详解-spring原码(一)https://blog.csdn.net/ke1ying/article/details/131360060 事务源码 先从缓存里获取,主要是判断循环依赖是否创建动态代理 进去wrapIfNeces…

【MOOC 作业】第3章 传输层

不是标答也不是参考答案 仅从个人理解出发去做题 1、(20分) ‍主机甲和主机乙之间已建立一个 TCP 连接,TCP 最大段长度为 1000 字节,若主机甲的当前拥塞窗口为 5000 字节,在主机甲向主机乙连接发送 2 个最大段后,成功收到主机乙发…

Java微服务金融项目智牛股 项目简介与金融知识介绍及技术特点

项目简介 金融交易平台服务于金融衍生产品, 包含外汇、贵金属、期货、股票。 各产品具有不同属性与交易规则, 本项目对标MT4等大型交易平台, 遵循FIX全球最广泛的金融市场通用协议。 实现从证券注册开户、行情订阅与呈现, 股票撮合…

JAVA 日期类Date SimpleDateFormat Calendar

1、Date日期类 类 Date 表示一个特定的瞬间,精确到毫秒 1.1 Date的构造函数 Date() 分配一个 Date 对象,以表示分配它的时间(精确到毫秒) Date(long date) 分配一个 Date 对象,表示自从标准基准时间起指定时间的毫秒数…

2023最新AI创作系统/ChatGPT商业运营版网站程序源码+支持GPT4+支持ai绘画(MJ)+实时语音识别输入+免费更新版本

2023最新AI创作系统/ChatGPT商业运营版网站程序源码支持ai绘画支持GPT4.0实时语音识别输入文章资讯发布功能用户会员套餐免费更新版本 一、AI创作系统二、系统介绍三、系统程序下载四、安装教程五、主要功能展示六、更新日志 一、AI创作系统 1、提问:程序已经支持G…

论洗碗哥在CSDN摸滚打爬的256个日夜

目录 机缘 收获 成就 憧憬 机缘 创作初心了为了记录一下自己的日常学习过程,方便自己日后去总结,或者遇到类似的问题的时候就可以翻阅自己的文章了。也可以加深自己的印象。其实一开始我是一个不太善于总结的人,机缘之下,听到…

机器学习之PCA算法

目录 PCA算法 PCA目标 PCA原理推导 基于最大可分性推导 基于最近重构误差推导 PCA算法流程 PCA优点 PCA缺点 基于PCA的人脸识别 PCA算法 PCA,即主成分分析(Principal Component Analysis),是一种常用的降维技术&#x…

【博客674】警惕Prometheus 中的重复样本和无序时间戳错误

警惕Prometheus 中的重复样本和无序时间戳错误 1、场景 您的 Prometheus 服务器日志中是否遇到过以下错误? "Error on ingesting out-of-order samples" "Error on ingesting samples with different value but same timestamp" "dupli…

2023最全 Java 高频面试合集,掌握这些你也能进大厂

进大厂是大部分程序员的梦想,而进大厂的门槛也是比较高的,所以这里整理了一份阿里、美团、滴滴、头条等大厂面试大全,对于 Java 后端的朋友来说应该是最全面最完整的面试备战仓库,为了更好地整理每个模块,我也参考了很…

内网隧道代理技术(六)之 PowerCat反弹Shell

PowerCat反弹Shell PowerCat介绍 PowerCat是一个powershell写的tcp/ip瑞士军刀,看一看成ncat的powershell的实现,然后里面也加入了众多好用的功能,如文件上传,smb协议支持,中继模式,生成payload&#xff…

几分钟带你快速了解SpringBoot框架理论知识!

1.什么是SpringBoot SpringBoot其实就是Spring的子项目。它简化了Spring的开发难度,舍弃了一切可以舍弃的xml配置文件,提供了各种启动器,让程序员上手更快,节省了开发时间。 2.SpringBoot的优点 SpringBoot其实就是对Spring的缺…

抖音林客系统定制开发

抖音林客是一款提供旅游攻略和景点推荐的短视频社交平台,主要用户群体为喜欢旅游和分享生活的年轻人。从需求分析角度来看,可以从以下几个方面进行分析: 信息获取需求:抖音林客用户需求获取有关旅游的详细和实用的信息&#x…

Idea快捷键设置(Idea快捷键大全)

目录 友情提醒第一章、IDEA常用快捷键1.1)快捷键:查找/提示类1.2)快捷键:修改代码类1.3)快捷键:光标移动类 第二章、如何修改快捷键2.1)修改快捷键的方法2.2)我修改的快捷键&#xf…

不容错过!科东软件在2023华南国际工博会等你,一起见证科技的力量!

诚挚邀请 2023年6月27-29日,SCIIF华南国际工业博览会即将在深圳国际会展中心(宝安新馆)召开。本届华南工博会汇集大批国内外头部大咖,将呈现一系列世界领先的技术和创新理念,为新型工业发展注入新动力。 科东软件作为…

华为eNSP入门实验,Vlan配置,路由配置,用户模式,链路聚合

文章目录 一、同一交换机下的PC通信二、不交换机下的PC通信三、配置静态路由通信四、路由器rip协议配置五、路由器ospf协议配置六、单臂路由七、通过三层交换机使不同的Vlan能连通八、设备consolo密码模式九、设备consolo用户密码模式(AAA模式)十、Telne…

2023年低代码平台全球排行榜:企业首选榜单,揭晓最受欢迎的工具

近年来,随着数字化转型和云计算技术的普及,低代码平台已经成为企业开发和应用程序的首选工具之一。低代码平台可以大大缩短开发时间和成本,提高灵活性和可扩展性,同时保证应用程序的质量和稳定性。在这个强制数字化的时代&#xf…

关于npm和package.json的一些经验之谈(如何同时使用多个版本的echarts)

前言 人们往往会忽视他们最常用的东西的一些构造原理,感觉就是天生自带没有为什么。但是真的被问到这些问题的时候,却又答不上来。对于前端开发工程师来说,npm和package.json就是这样的东西。很熟悉却又很陌生。熟悉,是因为&…