reactjs - 剧作家:如何将环境变量从库传递到管道?

标签 reactjs typescript azure integration-testing playwright

背景

我有一个在 Azure DevOps 管道中运行 Playwright 集成测试的 React/TypeScript 项目。管道从 Azure DevOps 库获取环境变量。


问题

我可以在本地针对我部署的预生产环境成功运行测试。

但是,测试在管道中失败了。它们失败是因为管道无法读取我尝试从库传入的环境变量。

失败的代码行:

await page.getByRole('textbox', { name: 'myVariable' }).fill(process.env.MyVariable as string);

我的环境变量出现管道错误: locator.fill: value: expected string, got undefined


如何将环境变量从库传递到管道以便 Playwright 可以读取它们?

最佳答案

解决方案

  1. 我将测试文件名从 myFile.spec.ts 更新为 myFile.spec.tsx
  2. 我在环境变量中添加了 REACT_APP_ 前缀。
await page.getByRole('textbox', { name: 'myVariable' }).fill(process.env.REACT_APP_MY_VARIABLE as string);
  • 现在我的 Azure DevOps 管道可以读取 Azure DevOps 库中的变量,并且测试成功!
  • Running 3 tests using 1 worker. 3 passed

    关于reactjs - 剧作家:如何将环境变量从库传递到管道?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75490109/

    相关文章:

    javascript - 在 Typescript 中,使用公共(public)字符串字段作为键从 Array<T> 构造 Map<string,T> 时出错

    javascript - TypeORM:无法读取未定义的属性 'getParameters'

    azure - 无法向 Azure 2012 R2 VM 添加功能

    azure - 使用 SWFUpload 在 Windows Azure Web 角色上上传大文件(最大 2GB)

    javascript - 您必须向handleSubmit() 传递一个onSubmit 函数,或者将onSubmit 作为prop | 传递。回归形式

    javascript - react 选定的对象,无法显示我想要的

    cordova - 在 Ionic 2 中,如何在键盘显示时将元素 float 到键盘上方?

    c# - Azure ML Web 服务请求在 C# 中不起作用

    javascript - react : re render componet after button click

    javascript - 检查 Jest 中功能组件的状态值