- コールバック関数を使用する方法:
Cypressコマンドは非同期で実行されるため、コマンドの戻り値を直接使用することはできません。代わりに、コールバック関数を使用して結果を取得します。例えば、
cy.get()
コマンドで要素を取得し、そのテキストを取得する場合、以下のように記述します。
cy.get('.my-element').invoke('text').then((text) => {
// 取得したテキストを利用する処理をここに記述する
console.log(text);
});
.then()
メソッドを使用する方法:
Cypressのコマンドチェーンでは、.then()
メソッドを使用して直前のコマンドの結果を取得できます。例えば、ページのURLを取得する場合、以下のように記述します。
cy.url().then((url) => {
// 取得したURLを利用する処理をここに記述する
console.log(url);
});
- エイリアスを使用する方法:
Cypressでは、コマンドの結果を変数に格納するために、エイリアスを使用することもできます。例えば、特定の要素を取得し、そのテキストをエイリアスに保存する場合、以下のように記述します。
cy.get('.my-element').invoke('text').as('elementText');
cy.get('@elementText').then((text) => {
// エイリアスに保存したテキストを利用する処理をここに記述する
console.log(text);
});