先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新软件测试全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024b (备注软件测试)

正文

这是一个非常好用的git可视化工具,改天会具体介绍它的强大功能。

这款软件不是必须的,只是为了方便项目拉取,所以,你可以跳过此步骤。

配置jenkins环境

这里才是至关重要的一项,本文的核心

配置插件

1.Android Emulator Plugin

Starts an Android emulator with given properties before a build, then shuts it down after. 2.build timeout plugin

This plugin allows builds to be automatically terminated after the specified amount of time has elapsed. 3.Email Extension Plugin

This plugin is a replacement for Jenkins’s email publisher 4.Gradle Plugin

This plugin allows Jenkins to invoke Gradle build scripts directly. 5.Keychains and Provisioning Profiles Management

This plugin integrates management of keychain and provisioning files for iOS and OSX projects. 6.Maven Integration plugin

This plug-in provides, for better and for worse, a deep integration of Jenkins and Maven: Automatic triggers between projects depending on SNAPSHOTs, automated configuration of various Jenkins publishers (Junit, …). 7.Pipeline

A suite of plugins that lets you orchestrate automation, simple or complex. See Pipeline as Code with Jenkins for more details. 8.Pipeline: GitHub Groovy Libraries

Allows Pipeline Grrovy libraries to be loaded on the fly from GitHub. 9.SSH Slaves plugin

Allows to launch agents over SSH, using a Java implementation of the SSH protocol. 10.Subversion Plug-in

11.Timestamper

Adds timestamps to the Console Output 12.Workspace Cleanup Plugin

This plugin deletes the project workspace after a build is finished. 13.Xcode integration

This plugin provides builders to build xcode projects, invoke agvtool and package .ipa files 其中Android Emulator Plugin、Gradle Plugin是安卓必须插件;其中Keychains and Provisioning Profiles Management、Pipeline、Xcode integration是ios编译必须插件;

其中Maven Integration plugin、SSH Slaves plugin是maven项目必须插件,其他的Email Extension Plugin这个是为了编译失败的时候通知具体提交代码开发人员邮件

配置系统设置

Local Maven Repository为maven仓库地址;如果本机没有安装maven,可能需要增加maven仓库;

下面需要加入安卓环境变量,即上文中提到的那个sdk地址; 这里配置github地址,邮件用户名密码,注意发件人的邮箱必须上面jenkins注册是管理员邮箱是一个,否则一直失败,这里是个坑。

增加计划

Android 项目job

创建安卓job 配置项目的git库地址 下面配置触发器,每隔1分钟检查一次git库,也可以使用subscribe订阅,这里暂不做讲解。 设置编译后,将文件拷贝到一个文件目录。这里使用smb协议连接到了一个内网文件服务器上,方便测试部门测试。 至于具体为何执行2次拷贝,是因为项目同时编译测试环境地址和真实环境地址,只有连接的服务器地址不通,其他代码都相同,具体实现可看另外一篇博文:

https://juejin.im/post/59302a0fa22b9d0058b785bc

ios项目job

和安卓相同的源代码管理及触发器不做介绍,请参照安卓,下文同理。 这里需要配置ios项目的tagert,可以通过xcode打开查看,勾选Pack application and build .ipa?,使jenkins生成ipa包 配置证书地址和密码,这里指的是Keychain

Keychain path默认地址为/Users/shaolei/Library/Keychains/login.keychain,其中shaolei为mac登录的用户名,密码就是登录密码。失败时邮件发送至影响代码的配置请参照安卓,下文同理。

同时编译两个ipa包请查看:

https://juejin.im/post/59648bb05188250cf956e3ef

java项目job

因为公司人员少,项目版本如果让开发去控制,比较繁琐,每个开发得不停的增加版本号,这里我使用jenkins去控制版本号,这样也方便查询和回滚代码。

当然啦,实现war的升级和回滚可看另外一篇文章:

https://juejin.im/post/59633a126fb9a06ba024ffdd

cd ${WORKSPACE} mvn clean cd ${WORKSPACE}/******/src/main/resources/ echo ${BUILD_NUMBER} >ver.xml

当然了,这里用到了几个关键词变量,是jenkins特有的,更多变量参照下文:

CHANGE_AUTHOR For a multibranch project corresponding to some kind of change request, this will be set to the username of the author of the proposed change, if supported; else unset. CHANGE_AUTHOR_DISPLAY_NAME For a multibranch project corresponding to some kind of change request, this will be set to the human name of the author, if supported; else unset. CHANGE_AUTHOR_EMAIL For a multibranch project corresponding to some kind of change request, this will be set to the email address of the author, if supported; else unset. CHANGE_TARGET For a multibranch project corresponding to some kind of change request, this will be set to the target or base branch to which the change could be merged, if supported; else unset. BUILD_NUMBER The current build number, such as “153” BUILD_ID The current build ID, identical to BUILD_NUMBER for builds created in 1.597+, but a YYYY-MM-DD_hh-mm-ss timestamp for older builds …………………………………………等等

h5项目job

这里我就用了zip打包,部署时使用zip解压到指定目录即可。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注软件测试)

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长! 那么很难做到真正的技术提升。**

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注软件测试) [外链图片转存中…(img-b3MWp7Ov-1713221717862)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

相关链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: