Apple M1设备通过Jenkins用Java自动化运行Appium失败求助
解决方案
- 指定Appium绝对路径
先在Jenkins任务中执行which appium获取Appium的完整路径(例如/usr/local/bin/appium),然后将测试代码中调用appium的地方替换为这个绝对路径。测试代码的运行环境变量可能和Jenkins直接执行shell命令时的环境变量不一致,短命令无法被识别。 - 显式配置Jenkins任务的环境变量
在Jenkins任务的测试执行步骤前,先执行环境变量导出命令,把Appium所在目录加入PATH。比如:
路径根据export PATH=$PATH:/usr/local/binwhich appium的结果调整,这样测试代码继承的环境变量就能包含Appium的路径。 - 核对Jenkins执行用户
在Jenkins任务中执行whoami,对比你SSH直连节点时的用户。如果两者不同,环境变量配置可能存在差异,要么切换Jenkins节点的执行用户,要么为该用户重新配置Appium环境。 - 用脚本封装Appium启动逻辑
编写一个shell脚本,先配置好环境变量再启动Appium,测试代码调用该脚本而非直接调用Appium。示例脚本:
将脚本放在Jenkins可访问的路径下,测试代码中调用这个脚本即可。#!/bin/bash export PATH=$PATH:/usr/local/bin appium "$@"
内容的提问来源于stack exchange,提问作者Yurii
相关产品推荐
相关产品推荐

