4

为了执行 Xamarin Test Cloud 测试,您必须执行 appcenter 命令,例如

appcenter test run uitest --app "appName" --devices 228faeda --app-path *appPath*  --test-series "master" --locale "en_US" --build-dir *debugFolderPath*

这完美地工作。

我想通过 Jenkins 触发这个命令。

  • 我使用上面显示的命令添加了“执行 Windows 批处理命令”。

  • 我执行构建。

但是我在控制台输出中收到以下错误

“C:\Program Files (x86)\Jenkins\workspace\Xamarin Test Cloud Android>appcenter 'appcenter' 未被识别为内部或外部命令、可运行程序或批处理文件。”

这是为什么?

谢谢

4

1 回答 1

9

确保首先安装 appcenter-cli。

npm install -g appcenter-cli@1.2.2

应用中心测试的 Bash 脚本

下面是我用于 CI 的 bash 脚本。要实现它,您首先需要从 App Center 获取身份验证令牌。

手动检索 API 令牌

App Center CLI要求用户登录,我们可以通过提供登录令牌从构建服务器登录。

使用 App Center CLI,输入以下命令,替换[Name Of Token]为您想要命名此令牌的任何内容

appcenter login
appcenter tokens create -d "[Name Of Token]"

它将提供如下响应:

ID:[唯一向导]

API 令牌:[唯一 API 令牌]

描述:[令牌名称]

创建于:[时间戳]

应用中心测试 CI 脚本

bash 脚本执行以下操作:

  1. 找到 UI 测试构建目录
    • 替换[My UI Test Assembly Name]为您的 UI 测试程序集的名称
  2. 找到 APK 文件
  3. 安装 appcenter cli
  4. 使用 API Token 登录 App Center
    • 替换[login token]为您的登录令牌的值
    • 替换[Your App Center App Name]为您的应用名称的值
    • 替换[Your Device Id]为您的设备 ID 的值
#!/usr/bin/env bash

UITestDLL=`find . -name "[My UI Test Assembly Name].dll" | grep bin`
UITestBuildDir=`dirname $UITestDLL`

APKFile=`find . -name *.apk | head -1`

npm install -g appcenter-cli@1.2.2

appcenter login --token [login token]

appcenter test run uitest --app "[Your App Center App Name]" --devices [Your Device Id] --app-path $APKFile --test-series "master" --locale "en_US" --build-dir $UITestBuildDir --async
于 2018-04-07T17:42:25.137 回答