AWS Device Farm:如何在自定义测试环境中使用传递给 'schedule-run' 的参数

AWS Device Farm: How to use parameters passed to 'schedule-run' in custom test environment

我正在使用 bitbucket 管道在 AWS 设备场中触发测试 运行。在安排测试-运行 时,我将几个参数传递给设备农场。我想使用这些参数(在安排测试时传递)从我的自定义测试环境规范执行 API 调用(更新我在 bitbucket 中的构建状态)-运行)。我想知道如何在自定义测试环境中访问这些参数。

安排 运行 命令(我在最后传递参数的地方):

aws devicefarm schedule-run --project-arn ${DEVICE_FARM_PROJECT_ARN} --app-arn ${APP_ARN} --device-pool-arn ${ANDROID_DEVICEPOOL_ARN} --name "${BITBUCKET_BUILD_NUMBER}" --test type="APPIUM_JAVA_TESTNG",testPackageArn=${TEST_ARN},testSpecArn=${DEVICE_FARM_TEST_SPEC_ARN}, parameters={KeyName1=string,KeyName2=string}

我的测试规范文件示例:

version: 0.1

phases:
    install:
    commands:
        - command
    pre_test:
    commands:
        - command
    test:
    commands:
        - command to test
    post_test:
    commands:
        - command --> here I want to call bitbucket api to update my build status (using the parameters passed in 'schedule-run' command)

artifacts:
    - location
    - location

目前,AWS Device Farm 不支持将 ScheduleRun API 上的环境变量传递到自定义环境测试规范文件。但是,您可以在需要向其添加/更新环境变量时动态生成测试规范文件(使用一些 YAML 库),然后将其重新上传到服务。