软件测试|一键搞定centos7的docker+selenium+appium+jenkins+android_app源码打包成apk的环境搭建

简介: 软件测试|一键搞定centos7的docker+selenium+appium+jenkins+android_app源码打包成apk的环境搭建

一键搞定centos7的docker+selenium+appium+android apk包+jenkins搭建

git源码:

https://github.com/a376230095/centos7_apkbuild/tree/master

简介

  • 启动项目的start_all.sh,一键构建环境
  • 安装完包含的环境

    • docker-ce最新版本
    • selenium运行环境

      • chrome无头运行
      • chromedriver是84
    • appium运行环境

      • appium 1.18版本
      • 包含appium-docker
    • sdk运行环境

      • adb 1.0.41
      • sdk build有29.0.3和28.0.3 - sdk编译环境是28 29
    • jenkins运行环境

      • 集成大量插件

项目运行的前提条件:

  • 仅支持centos7的系统
  • 系统内核要大于3.10
  • 需要root权限下运行
  • 运行前建议弄好快照
  • 一键运行可能需要1小时的时间,请耐心等待,断网了,需要恢复快照
  • 网络要通,具备基础的命令
  • ==运行完毕后需要重启电脑,并手动启动jenkins,docker start jenkins==
  • 如果不运行docker.sh,先安装如下命令
yum install -y unzip
yum install -y wget
yum install -y exepct
yum install -y net-tools
yum install -y lrzsz
yun install -y zip

项目的一些bug

  • ==如果jenkins无法启动,运行命令:docker run -d --name jenkins -p 8080:8080 -p 50000:50000 -v /root/jenkins:/var/jenkins_home jenkins/jenkins:lts==
  • 构建apk如果出现licenses 29的问题,解决方法,运行sh_file的install_sdk.sh
Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.
> Failed to install the following Android SDK packages as some licences have not been accepted.
     platforms;android-29 Android SDK Platform 29
  To build this project, accept the SDK license agreements and install the missing components using the Android Studio SDK Manager.
  Alternatively, to transfer the license agreements from one workstation to another, see http://d.android.com/r/studio-ui/export-licenses.html
  
  Using Android SDK: /usr/local/android-sdk-linux

项目文件结构以及运行顺序

  • sh_file 存放环境搭建的shell脚本

    • docker.sh 搭建docker环境
    • python.sh 搭建python3和pip环境
    • selenium.sh 搭建selenium无头运行环境
    • android.sh 搭建sdk环境
    • appium.sh 搭建appium环境
    • jenkins.sh 搭建jenkins环境
    • ssh.sh 获取ssh的的公钥和私钥
    • build_app_installGit.sh 打包app的源码为apk,并安装git,只能重启后才能运行
  • py_file

    • selenium_test.py 是测试selenium是否成功运行
    • appium_test.py 是测试selenium是否成功运行
  • start_all.sh 一键启动项目

项目资料补充

  • sdk的路径:/usr/local/android-sdk-linux
  • java路径:/usr/lib/jvm/java-1.8.0-openjdk
  • build_app_installGit.sh脚本介绍

    • 由于子shell中source /etc/.bashrc在其他shell中无效,所以只能重启linux,才能找到ANDROID_HOME的环境变量
    • 项目源码来源于佘哥,感谢指点提供
    • 用的是29.0.3的build
    • gradlew是个好东西,都不用我们去配置gradle了
  • appium_test.py 文件

    • 需要修改里面的devicename
    • 需要安装雪球apk,或者自行修改package和activity
    • 只要能进入雪球,就判断ok
    • 运行:pytest appium_test.py
  • jenkisn项目

    • 账号:amdin,密码:1234
    • slave是本机,名字为linuxenv,但需要修改,修改成自己的ip地址,配置好ssh
    • linuxenv的工作目录是/root/slave
    • build_app_test任务直接在slave运行,已经配置好git和构建后apk的产出,运行后就会把apk放到jenkins上了
  • 运行了ssh.sh后,会在项目中生成key文件,直接复制粘贴到jenkins配置的ssh的秘钥上即可,包含公钥和私钥信息
相关文章
|
1月前
|
移动开发 安全 Java
Android历史版本与APK文件结构
通过以上内容,您可以全面了解Android的历史版本及其主要特性,同时掌握APK文件的结构和各部分的作用。这些知识对于理解Android应用的开发和发布过程非常重要,也有助于在实际开发中进行高效的应用管理和优化。希望这些内容对您的学习和工作有所帮助。
209 83
|
16天前
|
安全 算法 小程序
【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
83 28
【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
|
1月前
|
前端开发 Java 编译器
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
89 36
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
|
1月前
|
缓存 Java 测试技术
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
211 3
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
|
2月前
|
Dart 前端开发 Android开发
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
47 1
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
|
6月前
|
机器学习/深度学习 人工智能 文字识别
AI计算机视觉笔记二十:PaddleOCR环境搭建及测试
OCR技术广泛应用于日常生活中,与人脸识别一样常见。PaddleOCR是一个基于飞桨的OCR工具库,具有超轻量级中文OCR模型,支持中英文数字组合、竖排及长文本识别。本文档详细介绍了PaddleOCR的学习过程,包括环境搭建、安装、样本标注及测试步骤。使用AutoDL云平台进行环境创建,并提供了详细的命令行操作指南,帮助用户顺利完成PaddleOCR的部署与测试。
|
7月前
|
Java Android开发 Windows
使用keytool查看Android APK签名
本文介绍了如何使用Windows命令行工具和keytool查看APK的签名信息,并提供了使用AOSP环境中的signapk.jar工具对APK进行系统签名的方法。
537 0
使用keytool查看Android APK签名
|
6月前
|
人工智能 PyTorch 算法框架/工具
AI计算机视觉笔记十四:YOLOV5环境搭建及测试全过程
本文详细记录了在Windows 10环境下从零开始搭建yolov5环境并进行测试的全过程,涵盖环境配置、依赖安装及模型测试等关键步骤。文章首先介绍了所需环境(Python 3.8、yolov5-5.0),接着详细说明了如何使用Miniconda3创建与激活虚拟环境,并通过具体命令演示了如何下载安装yolov5及相关依赖库。最后,通过一系列命令展示了如何下载预训练模型并对示例图像进行目标检测,同时解决了一些常见错误。适合初学者跟随实践。如需转载,请注明原文出处。
|
5月前
|
Web App开发 前端开发 JavaScript
探索Python科学计算的边界:利用Selenium进行Web应用性能测试与优化
【10月更文挑战第6天】随着互联网技术的发展,Web应用程序已经成为人们日常生活和工作中不可或缺的一部分。这些应用不仅需要提供丰富的功能,还必须具备良好的性能表现以保证用户体验。性能测试是确保Web应用能够快速响应用户请求并处理大量并发访问的关键步骤之一。本文将探讨如何使用Python结合Selenium来进行Web应用的性能测试,并通过实际代码示例展示如何识别瓶颈及优化应用。
284 5
|
3月前
|
Web App开发 IDE JavaScript
Selenium IDE:Web自动化测试的得力助手
Selenium IDE:Web自动化测试的利器。作为开源工具,Selenium IDE支持录制与回放用户操作,适用于Chrome、Firefox等多浏览器,简化了测试流程,提升了效率,降低了自动化测试的门槛。它还支持导出多种编程语言的脚本,便于测试集成与复用。
170 31
Selenium IDE:Web自动化测试的得力助手

热门文章

最新文章