1. ホーム
  2. javascript

[解決済み] CypressでbaseURLの値にアクセスする方法

2022-03-01 22:02:47

質問

私はJavaScriptを学び始めたばかりで、いくつかの回帰テストを自動化するためにCypressを使用しています。私が現在書いているテストは、ヘッダーとフッターのリンクのテキストとhrefを確認することを意図しています。

私が抱えている問題は、これらのテストが様々な環境にわたって実行される必要があり、私のアサーションでドメインを設定するためにcypress.jsonで設定されたbaseUrlプロパティにアクセスできないように思われることである。

この後のスクリプトでは、次の行があります。 cy.get("a").should("have.attr", "href", baseUrl + footerLink.link) :

    it.only("translates the content info section", () => {
      cy.wrap(orbitData).each(service => {
        cy.visit(service.name);
        cy.get("#orb-contentinfo > div > ul > li").each(($li, index) => {
          let footerLink = service.links[index]
          cy.wrap($li).should("have.text", footerLink.linkText)
          .within(($li) => {
            cy.get("a").should("have.attr", "href", baseUrl + footerLink.link)
          });
        });
      });
    });

これまで、いろいろなことを試してきました。全部を挙げるのはちょっと恥ずかしいのですが、私はこれを始めたばかりなので、おそらく非常識で単なる推測に過ぎないでしょう。 Cypress.env('CYPRESS_baseUrl')Cypress.baseUrl . 毎回、次のように表示されます。 undefined .

また、もし私が完全に間違った方法でこれを攻撃しているのであれば、より良い方法について何かご指導いただければ幸いです。何かお手伝いやご指導をいただけるとありがたいです、ありがとうございます。

どのように解決するのですか?

を使用することができます。 Cypress.config() コマンドを使用します。

を取得するには baseUrl 値を使用します。 Cypress.config().baseUrl .