自分で書いた Cypress テストがあり、2 番目のテストを書かなくて済むように、結果の URL を取得して、次の 2 つの操作を実行できるようにしたいと考えています。
1) 別のページに強制的に移動するように変更したい
2) 1 を実行する際に、変更された URL で使用するために URL から動的な値を抽出する必要もあります。
cy.url() はありますが、必要な値を取得して変数として設定する方法がわかりません。これを行う方法をご存知の方はいらっしゃいますか? 私は初心者で、JavaScript をまだ学習中なので、これは簡単かもしれませんが、やり方がわからないだけです。アドバイスをいただければ幸いです。
答え1
cy要素から値を抽出するには、promiseを使用する必要があります(その後の構文)JS の非同期処理は最初は少し難しいかもしれませんが、慌てる必要はありません。このコアコンセプトを学習すれば、Cypress の仕組みをすぐに理解できるようになります。
質問 1 に答えるには、次のようにします。
cy.url().then(urlValue => cy.visit(urlValue + '/about');
上記の例では、現在の URL を抽出し、次のアクションで使用できます。(URL は矢印関数の引数として公開され、ここでは urlValue と呼ばれます)。