「功能测试进阶到自动化测试」一路走来都离不每个阶段的计划

news2024/11/19 2:28:54

关于「从功能测试,转岗到自动化测试」,主要的几个问题 :

001

目前一直在走功能测试,工作中也没有机会接触自动化测试 。想后续从事自动化测试,我应该从哪里开始学 ?

解答:自动化 ,可以是功能自动化、接口自动化、UI自动化 等等 。另外一个误区:自动化,不仅仅只是会几个自动化测试工具,或者会写点代码 。成熟的自动化测试人员 ,应该是要了解业务,了解为什么要启用自动化,启用自动化后产生了哪些价值 ?是提升效率了,还是提升质量了(很多时候,为了自动化而自动化,导致效率低下,问题上升) ?

002

已经自学了一段自动化测试知识了,现在遇到了疑惑 。是去找一家有自动测试团队的功能测试岗位,还是继续自学,找机会直接找一份自动化测试岗位(找机会内部专岗,还是直接跳槽到自动化岗位) ?

解答:如果是完全没经验,直接找自动化测试岗位,挺难的 。最好的机会,是内部接触一些自动化测试项目 / 经验 ,沉淀OK后,找机会跳槽到一个自动化测试岗位 。

最后,还是那个建议:别裸辞、别裸辞、别裸辞 。

工作中,自己去沉淀知识技能 ,而不是日复一日的重复性无脑劳动 。

很多同学说,工作中,没机会接触自动化测试 。

那么问题来了:

你测试的项目,自己用postman玩一下接口测试,没问题吧 。

把调通的接口,集成到jenkins,每天持续性运行没问题吧 ;

通过Jmeter获取上游接口值,完全场景闭环接口,没问题吧 。

你看 ,并不是工作中,没机会接触,只是自己懒 。

别找借口了 。

至于如上的这些工具,如何用 ?

进阶Python接口自动化测试必备教程(2023全网最详细)

又有些小伙伴问了?怎么学习自动化呢?

接下来我就给大家安利一下自动化测试学习路线

一、软件自动化测试的学习步骤

大概步骤如下:

1. 做好手工测试(了解各种测试的知识)->  2. 学习编程语言-> 3. 学习Web基础(HTML,HTTP,CSS,DOM,Javascript)或者 学习Winform

-> 4. 学习自动化测试工具 ->5. 学习自动化测试框架 -> 6. 实现自动化测试用例 -> 7. 开发自动化测试工具 ->8. 开发自动化测试框架
 

自动化测试的最高境界是:  开发测试工具,设计自动化测试框架, 让别人用。

二、自动化测试的本质

自动化测试的本质是:用程序测试程序。 也就是说学习“编程语言”是学习自动化测试的基础。

很多人问我学自动化测试,应该去学什么自动化工具。 我的回答是,第一步:应该先学习编程语言,以后再去学自动化测试工具

自动化测试是一定要写代码的, 编程语言水平的高低决定了自动化测试水平的高低, 有了扎实的编程技术,干什么都可以。

学习编程语言时, 要把自己当做开发人员, 系统地学习各种编程知识。

三、自动化测试学习的误区

很多新手一开始,就学习复杂的自动化测试工具, 我觉得这样是本末倒置了。

如果不先理解HTTP协议, 就不会理解Jemeter, LoadRunner, Fiddler, SoapUI这些工具的。

如果不先理解HTML,DOM, 就不会理解Firebug 这种工具的

如果不先理解Win32 API,  就不会理解Windows 窗体自动化测试的原理的。

如果自己没有开发过网站, 就不会理解网站的各个方面,测试起来难免有遗漏。

总之学习自动化测试,需要循序渐进, 把基础打好。

四、自动化测试的职位

自动化测试工程师的职位叫做: (SDET) Software Development Engineer in Test.   专注于自动化测试

手动测试工程师叫:               (STE)Software test enginer.           专注于手动测试

在微软有很多SDET的职位,但是没有STE的职位, STE职位一般都是外包给外包公司的,  目前自动化测试还是非常吃香的。

五、自动化测试分类

自动化测试也有非常多的种类, 

  1. 对Web UI 的自动化测试程序
  2. 对Windows 窗体UI的自动化测试程序
  3. API测试, 比如(测试WCF service, Web API 等)
  4. 数据库测试, 比如测试存储过程
  5. 接口测试 (这种只能用自动化测) 
  6. 单元测试
  7. 性能测试, 性能测试都需要用到自动化

六、Web自动化测试分类

目前大部分项目都是Web的, 所以我们说的自动化测试,大部分都是针对Web程序的自动化测试, Web自动化测试分两类: 

第一类是:模拟用户真实操作,比如,模拟点击鼠标,键盘输入,等,去操作浏览器上的控件。 (代表框架有selenium-webdriver,   VS Coded UI)

这类的自动化测试的是通过高级语言(C#, JAVA, Python 等)来调用selenium的一些工具来操作浏览器,帮助我们实行Web UI自动化

第二类是:模拟HTTP请求。

七、自动化测试的知识点 

应该像开发人员一样的心态去学习技术, 自动化测试需要掌握以下的知识:

了解Javascript, CSS的知识。 

熟练掌握DOM和HTML知识, (用来解析Web界面)

熟练掌握XML技术,(需要用XML保存测试数据,用XML展现测试报告)

熟练使用C# P/inoke技术调用Windows API (可以用来操作Winform 窗口)

熟练掌握窗体"句柄"的概念

熟练使用C# 操作Windows 注册表 

熟练使用C# 中的Process 类

熟练掌握数据库的基本操作语句 (测试数据库肯定要用到)

熟练掌握HTTP协议的知识 (请参考我的 HTTP系列博客 [HTTP协议详解])

熟练掌握C# 中的HttpWebRequest 类的用法 (用于模拟HTTP请求)

熟练掌握正则表达式

八、自动化测试的书籍推荐

 关于软件自动化测试的书,真心不多, 我查过市面上所有关于自动化测试的书,只找到下面这边书, 电子档

九、自动化测试工具

测试套件工具: JUnit,  Nunit,  MSTest,  这几个工具功能都一样学起来比较简单。   

性能测试工具: JMeter, VSTS 负载测试, LoadRunner(收费), QTP(收费)

Web UI 测试框架:WebDriver/Selenium,  VSTS Coded UI, Watri

Windows UI 测试框架:VSTS Coded UI 

其他工具:   firebug,  Fiddler 

​​

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

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

相关文章

【六】设计模式~~~结构型模式~~~适配器模式(Java)

【学习难度:★★☆☆☆,使用频率:★★★★☆】 1.1. 模式动机 在软件开发中采用类似于电源适配器的设计和编码技巧被称为适配器模式。通常情况下,客户端可以通过目标类的接口访问它所提供的服务。有时,现有的类可以满…

全渠道电子商务指南

希望将全渠道电子商务纳入您的业务战略,但不确定从哪里开始。这篇博文将指导您了解全渠道商务的基础知识,以及它与多渠道方法的区别。 全渠道电子商务旨在为线上和线下多个平台的客户创造全面的购物体验。客户可以通过各种接触点(例如网站、…

网络安全-02-BurpSuite工具安装

网络安全-02-BurpSuite工具安装 🔻一、BurpSuite简介&下载📗 二、Windows安装Jdk📰 2.1 下载Jdk并安装📰 2.2 设置Jdk环境变量📜 2.2.1 设置JAVA_HOME📜 2.2.2 设置path📜 2.2.3 Jdk验证 &a…

数据库基础——8.单行函数

这篇文章我们来讲一下数据库里面的单行函数 目录 1. 函数的理解 1.1 什么是函数 1.2 不同DBMS函数的差异 1.3 MySQL的内置函数及分类 2. 数值函数 2.1 基本函数 2.2 角度与弧度互换函数 2.3 三角函数 2.4 指数与对数 2.5 进制间的转换 3. 字符串函数 4. 日期和…

PyCharm配置Opencv

具体方案: Plan A:可以直接在pycharm中配置(如果有梯子可以试试,没有可能下载不了) 参考视频:直接在Pycharm中配置即可 两分钟用Pycharm安装并配置OpenCV_哔哩哔哩_bilibili PlanB:通过终端安…

dolphinscheduler3.1.7windows部署启动说明

简介 Apache DolphinScheduler是一个新一代分布式大数据工作流任务调度平台,致力于“解决大数据任务之间错综复杂的依赖关系,整个数据处理开箱即用”。它以 DAG(有向无环图) 的方式将任务连接起来,可实时监控任务的运行状态,同时…

01Redis单线程 VS 多线程

不同版本,情况不同 Redis的版本很多3.x、4.x、6.x,版本不同架构也是不同的,不限定版本问是否单线程也不太严谨。 版本3.x ,最早版本,也就是大家口口相传的redis是单线程 数据结构简单避免锁的开销和上下文切换可以有…

YOLOv7 tiny 新增小目标检测层

YOLOv7 tiny 新增小目标检测层 YOLOv7 tiny 新增小目标检测层修改yolov7-tiny.yaml文件YOLOv7 tiny 结构图调用 models/yolo.py验证 YOLOv7 tiny 新增小目标检测层 根据已有的结构进行新增小目标层,,个人理解,仅供参考!&#xff…

GPT模型应用及遥感云大数据在灾害、水体与湿地领域典型案例展示

GPT GPT的全称,是Generative Pre-Trained Transformer(生成式预训练Transformer模型)是一种基于互联网的、可用数据来训练的、文本生成的深度学习模型。 GPT与专注于下围棋或机器翻译等某一个具体任务的“小模型”不同,AI大模型…

Seata XA 模式理论学习、使用及注意事项 | Spring Cloud54

一、前言 通过以下系列章节: docker-compose 实现Seata Server高可用部署 | Spring Cloud 51 Seata AT 模式理论学习、事务隔离及部分源码解析 | Spring Cloud 52 Spring Boot集成Seata利用AT模式分布式事务示例 | Spring Cloud 53 我们对Seata及其AT事务模式的…

chatgpt赋能python:Python下载后的打开方法

Python 下载后的打开方法 Python是一种流行的编程语言,用于开发各种类型的应用程序,从Web应用程序到数据分析工具再到科学计算应用程序。许多人下载了Python,但是不确定如何在计算机上安装和打开它。在本篇文章中,我们将讨论Pyth…

如何实现UI交互?

UE5 插件开发指南 前言0 交易物品1 拖放物品1.0 拖放在背包里1.1 拖放在快捷栏里1.2 拖放在商店里1.3 放在其他地方2 小结前言 之前实现了UI的显示,这一篇补充UI的交互功能实现,先把思维导图画出来,程序员的自我修养就是任何时候都要理清思路,思路清晰是编码的前提,如下所…

解决幂等问题

1.概述 作为开发人员,我们每天都要开发大量的接口,其中包括了读接口和写接口,而对于写接口来说,除了要保证他的性能、可用性以外,还需要有一个重要的问题,那就是考虑如何保证接口的幂等性。 “幂等&#x…

mysql数据库连接失败授权认证 reading authorization packet --别的电脑可以,但是本地电脑连接失败

1.分析原因是否由于本机多次失败连接导致 在能连接的主机上或者服务器上 查看当前数据库阻断连接次数是否在不断增长 SHOW GLOBAL STATUS LIKE Aborted_connects;1.2观察这个终端连接次数是否一直在增长 如果一直在增长,说明mysql服务器被计算机不断的进行连接且被…

安科瑞针对HVDC方案推出的解决方案介绍

​安科瑞虞佳豪 摘 要:近年来,随着数据中心的迅猛发展,数据中心的能耗问题也越来越突出,有关数据中心的能源管理和供配电设计已经成为热门问题,合理可靠的数据中心配电系统方案,是提高数据中心电能使用效率…

数据结构与算法05:跳表和散列表

目录 【跳表】 跳表的实现原理 如何确定跳表的层高? 【散列表】 散列函数的设计 散列冲突 (1)开放寻址法(Open Addressing) (2)链表法(chaining) 装载因子 如何…

如何把两个视频拼接在一起?这些工具太棒了!

如何把两个视频拼接在一起?对于自媒体行业的人来讲,平时在进行短视频的剪辑时,总会需要合并多个视频,之后再剪辑处理。不过对于大部分没有从事自媒体行业的人来讲,可能对合并视频并不了解。下面我就来给大家分享可以拼…

paddleclas pp-shitu v1/v2

null集开放数据、开源算法、免费算力三位一体,为开发者提供高效学习和开发环境、高价值高奖金竞赛项目,支撑高校老师轻松实现AI教学,并助力开发者学习交流,加速落地AI业务场景https://aistudio.baidu.com/aistudio/projectdetail/…

BlackIce病毒分析

概述 blackice是一个古老的感染型病毒,可感染系统中exe、doc和xls文件,通过USB设备和网络驱动器来传播,会向C&C下载pe执行,会关闭常用的杀软进程。下面找了一个样本,这个样本的代码结构清晰,用IDA pro…

客服配置-shopro

客服配置 注意事项 shopro客服系统 采用 workerman 的 gateway-worker 作为服务基础,请先安装 gateway-worker 扩展包shopro商城 已不再支持 workerman 在线客服插件 安装部署 安装扩展包 composer require workerman/gateway-worker:~3.0 删除禁用函数(如有未列…