【干货分享】自动化测试理论知识以及相关框架

news2024/12/26 0:00:46

自动化测试

1.进行自动化测试的原因:

  a.黑盒测试回归测试效率低

  b.手动测试的偶然性和不确定性

  c.回归的覆盖率不足

  d.交付的产品质量无法保证,全靠评估

  e.系统越复杂,问题越多

  f.上线时间长,构件失败率高导致的蝴蝶效应(迭代多,加班快)

2.自动化测试解决的问题:

  1)提高出现问题后的响应速率

  2)降低回归成本

  3)提高回归覆盖率

  4)提高回归效率

  5)提高回归的稳定性

3.自动化测试不足:

1)无法减少成本投入,而是为了加快测试结果反馈,提升测试质量

2)自动化适用于回归和冒烟,而不是发现bug

3)录制回放功能的鸡肋,可视化并不是一个很好的做法

4)不是所有的系统所有功能都适合做自动化测试

4.自动化测试框架文件夹介绍:

Log:日志记录和管理功能,针对不同的情况,设置不同的日志级别,方便定位问题;

Report:测试报告生成和管理以及即时通知,测试结果快速响应;

Source:配置文件、静态资源的管理,遵循高内聚低耦合原则;

Common:公共函数、方法以及通用操作的管理,遵循高内聚低耦合原则;

TestCase:测试用例管理功能,一个功能点对应一个或者多个case,尽可能的提高覆盖率;

TestData:测试数据管理功能,数据与脚本分离,降低维护成本,提高可移植性;

TestSuite:测试组件管理功能,针对不同场景不同需求,组装构建不同的测试框架,遵循框架的灵活性和扩展性;

Statistics:测试结果统计管理功能,每次执行测试的结果统计、分析、对比以及反馈,数据驱动,为软件优化和流程改进,提供参考;

Continuous:持续集成环境,即CI环境,包括测试文件提交、扫描编译、执行测试、生成报告及时通知等功能,持续集成是自动化测试的核心!

5.常用的自动化测试框架:

5.1:接口自动化测试框架

  1)Java+testNG/Junit+Maven/Ant/Gradle+Jenkins+MySQL+testlink/redmine

  2)python+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine

  3)python+rebot framework+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine

  4)jmeter+Maven/Ant+Jenkins+MySQL+testlink/redmine

5.2:UI自动化测试框架

  1)java+selenium/appium+testNG/Junit+Maven/Ant/Gradle+Jenkins+MySQL+testlink/redmine

  2)python+selenium/appium+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine

  3)python+rebot framework+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine 

6.适合自动化测试的项目:

7.selenium:应用于web的自动化测试工具,支持多平台,多浏览器,多语言来实现自动化

优点:

  1.开源免费

  2.多浏览器支持:Chrome,Firefox,IE,Edge

  3.多平台支持:Linux,Windows,MAC

  4.多语言支持:Java,python,Ruby,C#,JavaScript,C++

  5.对web界面有良好的支持

  6.简单(API简单),灵活(开发语言驱动)

  7.支持分布式测试用例执行

8.下载浏览器驱动:

各个浏览器驱动下载地址:Downloads | Selenium

最后: 可以在我的VX公众号:【自动化测试老司机】免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。 

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

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

相关文章

分享200+个关于AI的网站

分享200个关于AI的网站 欢迎大家访问:https://tools.haiyong.site/ai 快速导航 AI 应用AI 写作AI 编程AI 设计AI 作图AI 训练模型AI 影音编辑AI 效率助手 AI 应用 文心一言: https://yiyan.baidu.com/ 百度出品的人工智能语言模型 ChatGPT: https://chat.openai.c…

春秋云境:CVE-2022-23880(taoCMS v3.0.2 任意文件上传漏洞)

目录 一、题目 二、进入题目: 2.1 文件写入一句话木马: 2.2 用SQL语句写入木马: 一、题目 靶标介绍: taoCMS v3.0.2 文件管理处存在任意文件上传漏洞,攻击者可执行任意代码 二、进入题目: 访问/admin …

CRM系统的作用有哪些?

CRM系统的作用具体有哪些?之前写过很多关于CRM选型类的内容,其实在介绍各大CRM软件时,都会大概介绍下其CRM系统的作用,这篇就借这个问题详细梳理下,CRM系统具体有哪些作用。 一个好用的CRM客户管理系统的作用包括哪些…

鸿合一体机怎么系统还原

系统还原方法:先用牙签按住电脑还原按钮不松,然后按一下电源按钮开机,直到电脑进入系统还原画面,就可以松开还原按钮了,系统还原完成后会自动重启,重启完成就可以用了。

消息队列(一)-- RabbitMQ入门(4)

RabbitMQ 其他知识点 幂等性 消息重复消费 消费者在消费MQ 中的消息时,MQ 已经把消息发送给消费者,消费者在给 MQ 返回 ack 时网络中断,故MQ 未收到确认消息,该消息会重新发给其他消费者,或网络重新连接后再次发给该消…

【高危】Atlassian Confluence 远程代码执行漏洞

漏洞描述 Confluence 是由 Atlassian 开发的知识管理与协同软件,通常在企业内部用作wiki系统。 Confluence 7.19.8到8.2.0之前的版本中存在远程代码执行漏洞,具有登录权限的攻击者无需用户交互即可在 Confluence 服务器中执行任意命令。 漏洞名称Atlass…

25、matlab里面的10中优化方法介绍——Opt_Golden法(matlab程序)

1.简述 基本思想 黄金分割法也称为 0.618 法,其基本思想是通过取试探点和进行函数值比较,使包含极小点的搜索区间不断缩短以逼近极小值点。适用于确定区间上的任何单谷函数求极小值的问题。 公式推导 设有定义在[ a , b ] [a,b][a,b]上的单谷函数 φ ( …

Jmeter(二十三):快速生成测试报告

一、jmeter配置 首先要保证jmeter命令是ok的,如果你在cmd中输入jmeter -v,有出现如下截图所示的信息,那就说明jmeter环境ok; 二、jmeter执行结合命令 生成HTML测试报告 1.完成脚本的调试、参数化、断言等操作。然后在聚合报告中指定日志文件存储路径,路径中最好不要包含有…

魏牌转型,别笑得太早

作者 | 魏启扬 来源 | 洞见新研社 魏牌似乎终于迎来了自己的“救世主”。 确定冲击高端智能新能源赛道,并且战略性放弃2000万辆的燃油车市场后,魏牌CEO陈思英将2023年定位为反击之年。 4月13日,上海车展前夕,魏牌推出”比‘500…

数分面试题-SQL常见面试题型1

目录标题 1、连续时间问题1.1 最近一周内的活跃天数1.2 每个用户一周内最大连续活跃天数1.3 计算截至当前,每个用户已经连续签到的天数 2、时间间隔问题举例3、sql窗口分析函数3.1 有一个日志登陆列表,获取用户在某个页面停留时长3.2 寻找至少连续出现3次…

大文件传输中的加密与安全措施

随着现代科技的不断发展,大文件传输已经成为了日常工作中不可或缺的一部分。但是,大文件传输中面临的安全问题也越来越凸显,因此加密与安全措施对于保护大文件传输的安全性至关重要。 一、密码学 密码学是加密与安全措施的基础,它…

ES6:Object.assign方法详解

ES6:Object.assign方法详解 1、前言2、语法3、基本用法3.1 目标对象和源对象无重名属性3.2 目标对象和源对象有重名属性3.3 有多个源对象3.4 其他情况3.4.1 只有一个参数时,Object.assign会直接返回该参数3.4.2 如果该参数不是对象,则会先转成…

[ 容器 ] Harbor 私有仓库的部署与管理

目录 一、什么是Harbor二、Harbor的特性三、Harbor的构成四、Harbor 部署五、关于 Harbor.cfg 配置文件中有两类参数:所需参数和可选参数六、维护管理Harbor 一、什么是Harbor Harbor 是 VMware 公司开源的企业级 Docker Registry 项目,其目标是帮助用户…

centos7 基础设置

CentOS 7 是一种基于 Linux 操作系统的发行版,它是来自于 Red Hat Enterprise Linux(RHEL)源代码的重构版本。 CentOS 7 是由社区开发和维护的免费操作系统,被广泛应用于服务器环境和企业级应用。 CentOS 7 提供了稳定、安全且可…

OPTEE之静态代码分析实战三——optee_examples

ATF(TF-A)/OPTEE之静态代码分析汇总 一、optee_examples源码下载及分析 前文分别对optee_os和optee_client进行了静态代码分析实战,本次对optee_examples实施soanrlint静态代码分析,先到官方网站下载源码。官方网站位于github,网址optee_examples。 各发布版本如下…

windows下nginx更改配置unknown directive踩坑填坑

windows下nginx更改配置踩坑填坑 windows下nginx大坑:首先笔者建议了使用路径下cmd的方式启动服务,由于笔者更改了nginx配置文件,重新加载启动(命令nginx -s reload)nginx后一直报错,采用双击启动&#xff…

国际化(i18n)

国际化(i18n) 概述 i18n(其来源是英文单词 internationalization的首末字符i和n,18为中间的字符数)是“国际化”的简称。在信息技术领域,国际化与本地化(英文:internationalization and localization&…

STM32 互补PWM 带死区 HAL

1、设置PWM波频率100KHz,占空比50%,死区时间1us 2、 while 循环之前启动PWM HAL_TIM_PWM_Start(&htim1, TIM_CHANNEL_1); //启动TIM1_CH1 PWM输出 HAL_TIMEx_PWMN_Start(&htim1,TIM_CHANNEL_1);//启动TIM1_CH1N PWM输出 3、死区计算 DT_time…

基于Jquery EasyUI JSZip FileSaver的简单使用

一、前言 在前端的项目开发中 &#xff0c;下载文件压缩包是很重要的一个环节&#xff0c;那么怎么下载多个文件并压缩成ZIP下载呢&#xff1f; 二、使用步骤 1、引用库 <script type"text/javascript" src"~/Scripts/comm/jszip.min.js" ></…

draw.io画图时,用一个箭头(线段)连结一个矩形和直线时,发现,无论怎么调节,都无法使其无缝连接。

问题描述&#xff1a;draw.io画图时&#xff0c;用一个箭头&#xff08;线段&#xff09;连结一个矩形和直线时&#xff0c;发现&#xff0c;无论怎么调节&#xff0c;都无法使其无缝连接。要么少一段&#xff0c;如图1所示。要么多一段&#xff0c;如图2所示。 图1&#xff0c…