企业中自动化测试落地场景 Jenkins+git+python自动化框架

阅读: 评论:0

企业中自动化测试落地场景 Jenkins+git+python自动化框架

企业中自动化测试落地场景 Jenkins+git+python自动化框架

1.非本地运行,需要Linux 服务器搭建Jenkins

2.git代码管理仓库 ,将本地代码推送到远程仓库,供于团队统一管理

3.jenkins上关联git仓库地址

4.构建项目运行自动化测试代码生成自动化报告

5.团队人员准备好,需要团队协作,功能比较多

docker可启动jenkins,可提高效率

如何从0到1打造自动化测试平台:

1、人员组建

2、基建工作
1)测试用例管理系统

2)Bug管理系统

3)Wiki文档系统

4)代码管理系统
SVN、Git等工具均可使用。

3、自动化测试系统构建
如何从头开始构建自动化测试系统,往往是按照以下的顺序依次进行。

1)底层API
所有的自动化测试脚本都基于最底层的API接口的调用,所以这部分是自动化测试工作最先开始投入的部分。

2)自动化测试脚本
最初由于脚本当量不大,所以并不需要太庞杂的系统来承托脚本的运行,所以在底层API开发完毕后即可进入简单的自动化脚本的开发工作。

3)自动化框架
当自动化测试脚本的量级过大后,脚本的选择、运行、调度等变得困难,这时将需要一套自动化测试框架,负责所有脚本的调度,有时也可基于一些开源的框架做二次开发使用,这个阶段需要考虑的是采用哪种策略的框架更适合当前的自动化业务。

4)报告、日志系统
大当量的脚本将会对统一的日志有更高的要求,需要定义更规范的日志以及开发便捷的报告生成系统来配合自动化测试的进行。

5)环境部署
当整套的框架都开发完毕,需要一套规范的方法来快速的部署自动化测试环境到真实的测试平台上去。

6)集中控制系统
团队规模再次扩大之后,可能还需要一套集中控制系统,用来管理各个自动化测试平台,引入账户机制,远程操作,分布式执行等策略

4、自动化测试管理
1)自动化脚本管理
往往脚本也同其他代码一样,需要录入代码管理系统

2)自动化质量管理
通过率是自动化测试质量的重要指标,通过率过低会导致自动化的低效,甚至反而不如人工测试的效果好

3)自动化覆盖率
在编写自动化测试用例时,并非要一味的追求自动化的覆盖率,更多时候我们是需要考量自动化的投入与产出,使得自动化测试发挥其价值而不是消耗更多的人力。

4)持续集成
往往是通过持续集成的方式来自动执行冒烟测试,在软件构建之后立即反馈致命问题
 
 

一、概念

1. 什么是CI

CI就是持续集成,持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。

持续集成是企业中软件开发过程中一种实践的办法。软件研发的整个过程通过持续集成平台进行管理

每次集成都通过自动化的构建(包括编译、发布、自动化测试)来验证,从而尽快的发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件

把企业中的一系列过程集成到CI平台上,可以写好脚本,点击执行,或者定时执行。

2. 什么是CD

CD是持续交付,是在CI的基础进行了扩展,在CI环节完成了软件构建和测试工作并形成了新的版本,name接下来就要进行交付,而这里的交付并不是交付到生产环节,而是类生产环境

可以理解为灰度环境或者预发环境,进而接受部分真实流量的测试,如果没有问题则通过手动的方式部署到生产环境

二、CI常用工具-Jenkins

1. 工作流 编译打包部署发布

开发->提交代码(git代码版本管理工具分布式管理/gitlub可视化会更好/svn集中式管理)->静态代码扫码(无需运行代码,直接通过工具去检查代码中的错误)->单元测试(通过写代码直接测代码)->编译->测试->发布

CI是种理念,Jenkins是实现这种理念的工具

2. Jenkins是什么

Jenkins是一个独立的开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,到了某一个指定时间可以自动运行任务,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

Jenkins的前身是Hudson,是一个可扩展的持续集成引擎,可用于自动化各种任务,如构建,测试和部署软件

3. Jenkins的作用

持续自动的构建项目、测试软件项目等。主要提供了基于版本管理工具(如CVS、VSS、SVN)感知变化或每天定时的持续集成,并提供持续集成报告,email(提供丰富的插件库)等方式通知相关负责人,其要求是需要进行日构建的项目已经编写好全自动的项目编译脚本(可基于maven或Ant)

监控一些定时执行的任务

4. Jenkins的特点

4.1开源免费

4.2跨平台,支持所有的平台(Linux、Mac、Windows)

4.3支持分布式build(多任务去并行执行)

4.4web形式的可视化管理页面(web页面可视)

4.5安装配置超级简单

4.6tips提示及时快速的帮助

4.6已经有很多的插件(如:Email Extension、Git、GitHub、Subversion)

CI是一种理念,Jenkins是真正实现它的工具。

三、持续集成(CI)介绍

1. CI的价值

1.1减少风险:越早发现错误,修复费用就越低,及时检查软件测试的健康状况,减少发布时的风险(如:每天定时触发自动化测试项目,自动生成报告)

1.2.减少重复性的工作:通过自动化的持续集成可以将编译、部署、测试等动作都变成自动化的,无需太多人工干预

1.3.部署方便:任何时间和地点都可以部署软件。利用持续集成,可以经常对源代码进行一些小改动,并将这些改动和其他的代码进行集成。如果出现问题,项目成员马上就会被通知到

2. CI的架构

3. git和svn

git   代码管理工具,分布式管理,便于多人协作,对代码进行管理

svn  代码管理工具,集中式管理,多人协作时处理可能会有冲突

四、ci和自动化测试的结合

1jenkins的安装配置,就是在搭持续集成平台

安装:第一种Jenkins.msi(只能在windows上用)下一步下一步

第二种jenkins.war 可以在linux可以在windows

2.1Java -jar Jenkins.war的路径(可以直接拉进去就不用敲路径了)

2.2把war包丢到tomcatapp里,start这个tomcat

2.3后台进程启nohup java -jar Jenkins.jar &

如何打开:

1浏览器localhost:8080(默认8080端口)

2输入密码

3安装插件

4Manage jenkins中可以安装新版本

5Manage Jenkins(系统设置)-configure global security(全局安全设置)-安全域-允许用户注册勾上-保存(可以创建账号Create an account)

6装插件:manage jenkins系统管理-manage plugins插件管理-搜索所需插件Email Extension邮件通知、Git、GitHab(开源)、Subversion(svn)

7Windows上安装git

8Jenkins里也要配置git:全局工具配置- Path to Git executable:放有的路径-保存

2.web、app的自动化测试如何结合CI

怎么把代码放到git仓库:

1pycharm里要配置:设置:version control git放路径-githab token(令牌)网页打开githab创建账户把权限勾上

2配置gloab

3pycharm里配置terminal ——git init 生成一个.git的文件

4初次推:vcs——import into——share——写一下描述——push代码

修改过的代码:右击py文件)git——commit file,左边是之前的代码,右边是新增的,写一下描述commit message-commit:commit andpush

Cmd拿代码——Git clone 提交代码的地址

和jenkins如何集成:创建一个任务-构建自由风格的项目-ok

在jenkins下创建的job都存在c:/用户/cf/.jenkins/workspace下,只有运行(点三角)了才会出现这个路径-console output可以看路径

把代码拉到这个路径下:三角-con-git-代码提交的地址-add:jenkins:能访问githab的用户名和密码-de描述——add

本地写代码提交到git管理仓库,jenkins上创建一个job,job进行配置,把代码拉取到jenkins的workSpace路径下,jenkins进行配置执行拉下来的代码,所有人都可以在平台上执行,省去了把代码交给别人的过程

把整个编译打包部署过程通过jenkins进行管理

本文发布于:2024-02-01 21:07:04,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170679282539420.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:框架   场景   测试   企业   Jenkins
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23