一站式开源分布式集群云真机测试平台Sonic——基于Docker方式部署sonic前后端(体验版)


      Sonic:一站式开源分布式集群云真机测试平台,致力服务于中小企业的客户端UI测试,永久免费


      sonic官网:Sonic - 开源云真机测试平台


      开源不易,请大家多多支持作者!如果您的公司已经投入使用sonic产品,可以联系他将您公司logo放官网,这是对sonic最大的支持。


以下是本人实际搭建过程总结,希望对计划或正在搭建的同学有帮助!


Docker方式部署sonic前后端(体验版)环境信息:


Docker所属操作系统:Centos 7.5


数据库:Mysql5.7.34


Agent部署环境:Windows 7 64bit 旗舰版、JDK16、Appium1.9.10、Nodejs V13.14、Appium1.19.1


一、安装Mysql数据库


1、安装mysql数据库,具体安装参见:MySQL数据库安装与配置详解 - daixinet.com - 博客园


2、创建数据库sonic(具体也可自定义,确保后续配置文件中数据库保持一致即可)


【注意】:字符集为utf8,排序规则为utf8_general_ci




二、Centos系统下安装Docker


Docker具体安装参考:在Linux(centos7)上安装docker_七星程序员的博客-CSDN博客


三、基于Docker方式一键部署前后端


      该方式将一次性部署Sonic服务端(单机版),Sonic前端,可根据docker-compose.yml文件内容自定义参数。


     (a)下载docker-compose.yml文件


      下载地址:Releases · SonicCloudOrg/sonic-server-simple · GitHub


      修改文件中的数据库连接地址信息



(b)上传docker-compose.yml文件至Centos服务器


(c)运行docker-compose up -d




安装完成后,可以访问http://ip:3000即可访问管理页面,根据提示注册用户即可登录。



使用docker ps可以查看当前运行的容器:docker ps



如要查看simple服务实时日志,可以使用:docker logs -f  7486ec666762



4、Windows下基于jar包方式部署Agent


部署agent前环境准备工作


(a)安装npm



(b)安装Nodejs


建议从官网下载Nodejs,推荐LTS版本,比较稳定:Previous Releases | Node.js


下载安装包后按照提示安装即可。



【注意】windows 7支持的Nodejs版本是V13.14,其它新版本不兼容。


(c)安装jdk16(注意是JDK16不是1.6,请睁大眼睛哦),并将JDK路径设置到系统环境变量,命名为JAVA_HOME




(d)安装安卓SDK:将安卓SDK设置到系统环境变量,命名为ANDROID_HOME。确保platform-tools目录存在,adb指令可用。




(e)安装appium:npm install -g appium@1.19.1 --chromedriver-skip-install



安装完成后查看版本:appium -v



安装可参考:appium安装说明简易版 - 环境配置 - 测试人社区


(f)tidevice安装,详见跨平台iOS自动化测试工具——tidevice安装及使用_aovenus的专栏-测试新时代(微信公众号:测试新时代)-CSDN博客



(g)安装谷歌浏览器:



(h)下载并安装chromedriver.exe:


查看谷歌浏览器版本:点右侧三个竖点—>帮助—>关于Google Chrome,可以看到谷歌浏览器版本。



下载该浏览器版本93.0.4577.63对应的chromedriver.exe,下载地址:ChromeDriver Mirror



下载后放到谷歌浏览器所在目录下:




基础环境配置完成后,下面开始部署agent:


(1)通过http://ip:3000访问sonic管理页面,在【设备中心】的【Agent中心】新增Agent,记录Agent的Key





     


(2)下载 agent-sources.zip 和 符合自己系统的jar包 到任意目录(如本示例为sonic)


下载地址:Releases · SonicCloudOrg/sonic-agent · GitHub



      解压 agent-sources.zip 内的文件到 sonic目录 下(即解压后的mini、language、chromeDriver、config、plugins文件夹与jar同级)。



修改config文件夹中 application-prod.yml 的配置信息,并保存。


【注意】:重点正确填写红色标注的内容!!!务必正确!!



之后切换到jar包所在目录运行:java -jar sonic-agent-windows-x86_64.jar




如正常显示如上信息,则表示部署成功!!恭喜恭喜,下面就开心体验吧!


之后自行接入安卓设备即可(设备请竖直放置或平摊放置,左右旋转放置有可能影响坐标定位),记得开启USB设备调试。


adb查看接入设备:



(3)访问sonic管理页面:http://ip:3000,输入登录用户名和密码登录。



可以看到已接入的设备,并显示状态为空闲中,点“马上使用”,手机上将提示安装sonic、appium插件应用。




之后根据提示安装uiaotomator2






安装完成后,管理界面中将正常显示手机界面,并可以远程操作了!开始你的自由之旅吧!


附:安装部署常见问题


【问题1】JDK版本不对,启动agent时报如下错误。



【解决方法】需要JDK16以上,不是JDK1.6,同学,睁大眼睛看清楚哦!


JDK下载地址:Archived OpenJDK GA Releases


安装完成后查看JDK版本。



【问题2】使用java -jar sonic-agent-windows-x86_64.jar启动agent时, Appium环境检查报错。



【解决方法】使用npm i -g appium安装



【问题3】使用java -jar sonic-agent-windows-x86_64.jar启动agent时,adbkit 环境不通过 ×



【解决方法】使用npm i -g adb kit安装或下载adb kit(Downloads - ADB Shell)并添加到系统环境变量PATH。


【问题4】使用java -jar sonic-agent-windows-x86_64.jar启动agent时,chromedriver环境检查不通过 ×



【解决方法】没有修改agent-sources/config/application-prod文件中chromedriver路径,修改为当前实际路径即可。



【问题5】使用java -jar sonic-agent-windows-x86_64.jar启动agent时,运行后报以下错误:



需要卸载本机已安装Appium,使用npm i -g appium重新安装。安装参考:appium安装说明简易版 - 环境配置 - 测试人社区



安装完成后查看版本:



再次启动agent后,应该可以看到端口7777监听,说明正常启动成功。



更多常见问题请参考:sonic开源项目 - 测试人社区

  • 5
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
使用SONIC_DOCKER_IMAGES变量来指定构建SONiC时所需的Docker镜像非常简单。下面是一个例子: 假设你需要在SONiC中使用Redis数据库,可以按照以下步骤进行操作: 1. 打开sonic-buildimage目录下的Makefile文件。 2. 找到以下行: ``` SONIC_DOCKER_IMAGES ?= $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-common:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-$(IMAGE_NAME_SUFFIX):$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-syncd:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-snmp:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-database:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-swss:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-fpm:$(DOCKER_TAG) ``` 3. 在这一行的末尾添加Redis镜像的名称和版本号,以空格分隔,例如: ``` SONIC_DOCKER_IMAGES ?= $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-common:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-$(IMAGE_NAME_SUFFIX):$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-syncd:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-snmp:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-database:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-swss:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-fpm:$(DOCKER_TAG) \ redis:5.0.8 ``` 这将告诉构建系统在构建SONiC时使用Redis 5.0.8镜像。 4. 保存文件并退出。 5. 运行make命令以开始构建SONiC,例如: ``` make all ``` 在构建过程中,Redis镜像将被下载并用于构建SONiC镜像。完成构建后,你可以使用Docker命令来启动Redis容器。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值