You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Devops向Xray Cloud multipart导入测试结果报curl 26错误如何解决

问题修复方案

核心错误原因

curl错误码26的本质是无法读取你指定的本地文件,你的配置存在3个明确问题:

  • 路径分隔符使用错误:你使用了Windows风格的反斜杠\作为路径分隔符,但Bash环境下(不管运行在Linux/macOS还是Windows agent)都默认把反斜杠识别为转义字符,会直接忽略掉后面的路径分隔作用,比如path\issueFields.json会被解析为pathissueFields.json,自然找不到对应文件。
  • 语法错误:第二个curl命令的末尾多了一个多余的双引号,会导致后续参数解析异常。
  • 缺少前置校验逻辑,无法快速定位是token获取失败还是文件不存在的问题。

修复后的脚本示例

# 静默获取token,避免多余日志输出
token=$(curl -s -H "Content-Type: application/json" -X POST --data '{ "client_id": "$(client_id)","client_secret": "$(client_secret)" }' https://xray.cloud.xpand-it.com/api/v1/authenticate| tr -d '"')

# 调试校验(可在问题解决后删除)
echo "token获取状态:长度为${#token}"
pwd # 打印当前工作目录,确认路径根目录正确
ls -la path/issueFields.json path/target/surefire-reports/TEST-TestSuite.xml path/testIssueFields.json # 确认所有待上传文件都存在

# 执行上传,路径改为正斜杠,删除末尾多余引号
curl -H "Content-Type: multipart/form-data" -X POST \
-F info=@path/issueFields.json \
-F results=@path/target/surefire-reports/TEST-TestSuite.xml \
-F testInfo=@path/testIssueFields.json \
-H "Authorization: Bearer $token" \
https://xray.cloud.xpand-it.com/api/v1/import/execution/testng/multipart

额外注意事项

如果你的流水线运行在Windows agent上,也可以选择把路径用单引号包裹,将反斜杠转义为\\,但更推荐统一使用正斜杠/,跨系统兼容性更好。如果调试时ls命令提示文件不存在,需要检查你的测试任务生成报告的输出路径,和你脚本中写的路径是否一致。

内容的提问来源于stack exchange,提问作者vladys2019

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 03:39:03