Azure Pipeline中BrowserStack Results任务报‘Build not found by name’问题
问题解决:Azure Pipeline中Playwright+BrowserStack的Build找不到错误及相关警告
问题概述
在Azure Pipeline运行TypeScript版Playwright自动化测试时,遇到两个问题:
- BrowserStack Results任务报错:
Build not found by name: "azure-IRef.AutomatedTests - POC - BS-829099" - npm自定义任务出现警告:
Can't find loc string for key: Info_GotAndMaskAuth
1. 解决“Build not found by name”错误
这个错误的核心是Playwright测试未将指定的Build名称上报到BrowserStack,导致后续Results任务无法匹配到对应Build记录。
步骤1:修改Playwright配置,传递Build名称到BrowserStack
你的playwright.config.ts已读取BROWSERSTACK_BUILD_NAME变量,但未在测试配置中传递给BrowserStack。需更新配置如下:
import { defineConfig, devices } from '@playwright/test'; import { config } from 'dotenv'; const defaultEnv = process.env.ENV_VARS || 'qa'; const buildName = process.env.BROWSERSTACK_BUILD_NAME; config({ path: `./env/.env.${defaultEnv}`, }); require('dotenv').config(); export default defineConfig({ metadata: { actionTimeout: 1000, shortTimeout: 3000, mediumTimeout: 30000, longTimeout: 40000, veryLongTimeout: 50000, // 新增:将buildName加入metadata,确保测试结果关联指定Build build: buildName }, testDir: './tests', fullyParallel: true, forbidOnly: !!process.env.CI, retries: process.env.CI ? 1 : 0, workers: process.env.CI ? 1 : undefined, reporter: [ ['html', { open: 'never' }], ["line"], ['list', { printSteps: true }], ['json', { outputFile: 'test-results.json' }], ['junit', { outputFile: 'results.xml' }], // 新增:如果使用BrowserStack官方Reporter,添加该配置 ['browserstack', { buildName: buildName, projectName: '你的项目名称' // 替换为实际项目名 }] ], use: { baseURL: '', trace: 'on', screenshot: 'on', video: 'on', actionTimeout: 5000, // 关键:通过BrowserStack远程运行测试时,需配置该参数 ...(process.env.CI ? { browserstack: { buildName: buildName, username: process.env.BROWSERSTACK_USERNAME, accessKey: process.env.BROWSERSTACK_ACCESS_KEY, } } : {}) }, timeout: 0, projects: [ { name: 'chromium', use: { ...devices['Desktop Chrome'], } }, ], });
步骤2:验证Azure Pipeline变量一致性
从日志可知Pipeline已设置BROWSERSTACK_BUILD_NAME=azure-IRef.AutomatedTests - POC - BS-829099,需确保:
- 该变量在运行Playwright测试的npm任务中可访问(可在任务的环境变量中显式传递)
- 测试任务必须在BrowserStack Results任务之前运行,确保BrowserStack后台已生成对应Build记录
步骤3:检查BrowserStack后台的Build名称
登录BrowserStack后台,确认存在名称完全匹配的Build(注意大小写、空格、符号均需一致)。
2. 关于警告“Can't find loc string for key: Info_GotAndMaskAuth”
这个警告是Azure Pipeline内部任务的本地化字符串缺失问题,和当前Build找不到错误完全无关,不会影响测试运行或结果上报,可直接忽略。
内容的提问来源于stack exchange,提问作者user26468708
相关产品推荐
相关产品推荐

