【问题标题】:Angular E2E acces environment variablesAngular E2E 访问环境变量
【发布时间】:2021-11-01 16:25:07
【问题描述】:

所以我将 NX 与 Angular 一起使用,并且我有多个应用程序,它们具有两种可能的身份验证方法。因此,我需要进行 E2E 测试,测试两种身份验证方法,因为它们的输入字段不同。所以这将是我的尝试,但我不知道应该如何导入环境变量:

describe('Login Page', () => {
  it('Login should succeed', () => {
    if (environment.authType === 'password') {
      [...]
    } else if (environment.authType === 'oauth') {
      [...]
  });
});

在我的应用中,我使用依赖注入来访问环境,是否可以访问它们?:

import { environment } from '../environments/environment';

@NgModule({
  declarations: [AppComponent],
  imports: [
    BrowserModule,
    AppRoutingModule,
  ],
  providers: [
    { provide: 'environment', useValue: environment}
  ],
  bootstrap: [AppComponent]
})
export class AppModule {}

【问题讨论】:

    标签: angular e2e-testing nrwl-nx nrwl angular-e2e


    【解决方案1】:

    切换到赛普拉斯进行 e2e 测试,Nx 支持新版本(不确定是否要改装)。

    Cypress 具有非常简单灵活的配置选项,请参阅 ConfigurationEnvironment 的文档

    例如,只需将其添加到 cypress.json 配置文件中

    {
      "env": {
        "authtype": "password",
        "login_url": "/login",
        "username": "...",
        "password": "..."
      }
    }
    

    和测试

    describe('Login Page', () => {
      it('Login should succeed', () => {
        if (Cypress.env('authType') === 'password') {
          [...]
        } else if (Cypress.env('authType') === 'oauth') {
          [...]
      })
    })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-17
      • 2021-05-19
      • 2022-01-04
      • 2020-11-12
      • 1970-01-01
      • 2016-12-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多