5年测试总结,自动化测试DevOps-CICD持续集成流程设计...

news/2024/11/28 23:58:50/

目录:导读

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


前言

测试进阶,DevOps和持续集成/交付,了解DevOps的基本概念、原理和工具,了解持续集成/交付的基本流程,熟悉Docker、Kubernetes等容器技术。

下面我们就来聊聊
DevOps:CICD流程设计思路

代码管理

选择代码管理工具:目前比较流行的代码管理工具有Git、SVN等,可以根据具体需求选择适合的工具进行代码管理。

创建代码仓库:在代码管理工具中,可以创建一个代码仓库,用于管理整个项目的代码。

创建分支:在代码仓库中,可以创建多个代码分支,用于管理不同的代码开发、测试和发布环境。

提交代码:开发人员可以将他们编写好的代码,通过代码管理工具提交到指定的分支上,代码管理工具会记录每次提交的代码版本,包括代码修改的内容、时间、开发人员等信息。

合并代码:在多人协作开发过程中,不同人员提交的代码可能会存在冲突,需要进行代码合并,将不同的代码修改合并成一个版本。

版本控制:使用代码管理工具的版本控制功能,可以轻松回溯、浏览和比较不同版本的代码,便于开发人员了解代码的历史演变,及时发现和解决问题。

分支管理:在不同的阶段,可以根据需求创建新的分支,例如开发、测试、预发布、生产等不同的分支,便于不同阶段的协同开发和测试。

自动化流程构建

可以使用Jenkins、Travis等来实现,通过定义构建任务和配置相关的参数,可以实现自动编译、打包、部署等操作,并生成构建报告,

环境准备:首先,需要在构建机器上安装构建工具和相关编译器等运行所需的环境。同时,需要配置好构建环境,如JVM、Node.js、Python等环境。

代码获取:构建过程中需要从版本控制仓库中获取代码,通常使用Git进行代码仓库的管理。

依赖管理:根据项目需要,安装相应的依赖库,如包管理工具Maven、NPM等。

编译:将代码编译成可执行文件。

打包:将编译后的文件进行打包,生成可执行的应用程序、库文件或者容器镜像等。

部署:将应用程序部署到指定的环境中进行测试,进行验证并记录测试结果。

编译输出:将编译打包后的文件输出到指定的目录中,供以后的构建和部署使用

自动化测试

对软件进行自动化测试,包括单元测试、集成测试、验收测试等,以确保软件质量。

选择自动化测试工具:常用的自动化测试工具有Selenium、Appium、Robot Framework、JMeter等,可以根据具体的测试需求选择适合的工具。

计划测试用例:在自动化测试前,需要先规划测试用例,并将其转化为可执行的测试脚本。测试用例应该基于需求分析、设计文档等项目规范,涵盖功能测试、性能测试、安全性测试等各个方面。

编写测试脚本:基于给定的测试需求,编写相应的自动化测试脚本,可以使用多种编程语言进行脚本编写,如Java、Python、Bat、Shell等。

配置测试环境:在进行自动化测试前,应该配置相应的测试环境,包括测试服务器、数据库等必要的环境。

自动化部署

将构建好的软件自动化部署到测试或生产环境中,可以使用容器编排工具如Kubernetes,或利用自动化脚本实现。

准备部署环境:在进行自动化部署前,需要先准备好部署环境,包括服务器、数据库、网络等。

创建部署流程:根据应用程序或系统的特点和需求,创建一个自动化部署的流程,通常采用自动化部署工具,如Jenkins、Ansible、Octopus Deploy等。

编写部署脚本:根据部署流程编写相应的脚本,完成自动化部署的各个步骤。脚本需要与部署工具集成,通过命令行或API接口来调用。

配置自动化部署工具:将自动化部署脚本交给相应的自动化部署工具,进行配置,包括安装、配置、测试等。

运行自动化部署:运行部署工具,将应用程序或系统的代码和相关配置文件自动化地部署到生产环境中。

验证和测试:在自动化部署完成后,需要进行验证和测试,确保应用程序或系统在生产环境中正常运行,包括性能测试、功能测试、安全测试等。

监控和管理:自动化部署完成后,需要对应用程序或系统进行实时监控和管理,以确保它们能够持续地稳定运行。

测试持续监控

对软件进行监控,包括性能监控、日志监控、故障监控等。

确定监控指标:根据应用程序或系统的特点和需求,确定需要收集和监控的关键性能指标,如响应时间、吞吐量、错误率等。

选择监控工具:根据监控指标的需求,选择合适的监控工具,如Zabbix、Nagios、Grafana等。这些工具通常提供可视化面板展示监控指标信息,一些工具也会提供报警机制,可以在指标达到阈值时触发报警操作,保证管理员及时发现异常情况。

配置监控工具:根据选择的监控工具,进行相应的配置,包括监控指标的收集、存储、分析和展示等。

监控应用程序或系统:启动监控工具,开始监控应用程序或系统的运行状态。当监控指标出现异常或错误时,监控工具会发出报警信息。

分析监控数据:对收集到的监控数据进行分析,通过对性能指标、错误日志、异常行为等的分析,发现应用程序或系统的问题并及时解决。

持续改进:通过对监控指标和数据的不断分析,找到应用程序或系统的瓶颈,进行优化和改进,并验证其效果。这样可以不断提升应用程序或系统的性能和稳定性。

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

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

无论你遇到多大的挑战和困难,都要记得保持积极向上的心态,勇往直前,坚持不懈。因为只有这样,才会最终实现自己的目标,收获成功和幸福。

每个人生命的长度是一定的,但我们所拥有的时间却是不确定的。因此,让我们珍惜每一分每一秒,努力奋斗,成为更好的自己,给生命留下更精彩的回忆。

坚持、努力、毅力,是成功的关键。当我们面对挫折时,不要轻易放弃,而应该从失败中汲取经验教训,不断调整自己的方向和方式,让自己变得更加强大、更加优秀。


http://www.ppmy.cn/news/52116.html

相关文章

Android 一个获取网址时间的Demo

Android 一个获取网址时间的Demo 文章目录 Android 一个获取网址时间的Demo通过一个网址获取时间的代码关于Android NTP 时间Android 同步时间代码 前段时间有个客户想用局域网同步Android 设备的时间,开发后把这个demo分享一下。 效果: 这里也获取了阿…

协众信息技术APP视觉设计规范

移动端显示有限,尽量突出界面功能网站中的导航可以做成百宝箱,显眼容易找到网站文字可以多些,多元化介绍:移动端少一些,简介明了   网站一个页面由很多个版块:移动端需要很多分层才可以表现移动端文字可…

cesium——相机飞行定位原理

Cesium飞行定位方法中,destination和orientation参数之间的关系可以用以下数学公式表示: 当只设置了destination参数时,相机保持当前朝向不变,直接飞往目标位置。 当只设置了orientation参数时,相机以当前位置为起点&…

C语言程序设计学习003——分支结构

在C语言中,分支结构是一种常用的控制结构,用于实现根据条件的不同而采取不同的措施。分支结构的语法形式包括if语句、if-else语句、if-else if语句、switch语句等,下面将逐一介绍它们的使用方法和注意事项。 if语句 if语句是最简单的分支结…

[读书笔记] 从问题和公式角度理解 Diffusion Model

[小全读书笔记] 从问题和公式角度理解 Diffusion Model 1. Diffusion Model的结构1.1 定义与限制1.2 定义与限制的数学体现 2. Diffusion Model的模型训练2.1 似然函数转换成ELBO2.2 拆解ELBO2.3 求解关键: q ( x t − 1 ∣ x t , x 0 ) q(x_{t-1}|x_t,x_0) q(xt−1…

java基础(一)-虚拟机和第一个命令

虚拟机: 用 Java 语言编写的程序由 Java 虚拟机 (JVM) 来执行。JVM 是一个特殊的程序,它知道如何执行用 Java 语言编写的程序。并且它的命令列表涵盖范围很大,比如: System.out.println(“你以为我会说虚拟机是由什么组成&#x…

Spring(11. 循环依赖 - 周阳)学习笔记

上一篇 :10. 面试问题简析 文章目录 1. Spring AOP1.1. Aop 常用注解1.2 测试前的准备工作1.2.1 业务类1.2.2 切面类 1.3 Spring4 下的测试1.3.1 POM 文件1.3.2 创建测试类1.3.3 Aop 测试结果 1.4 Spring 5 下的测试1.4.1 POM 文件1.4.2 创建测试类1.4.3 Aop 测试结…

【UE】倒计时归零时结束游戏

上一篇博客(【UE】一个简易的游戏计时器)完成了游戏时间每秒1的功能,本篇博客在此基础上完成倒计归零时结束游戏的功能 效果 步骤 1. 打开“ThirdPersonGameMode”,将剩余的秒数和分钟数的默认值分别设置为1和59 在事件图表中添…