yurinzflet
@yurinzflet (yurinzflet)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

Cypressの{force:true}はどのようなときに使うのでしょうか?

解決したいこと

Cypressのcheck()のオプション{force:true}はどのようなときに使うのでしょうか?

Cypress.ioの公式ドキュメントに以下のようなサンプルコードがあります。
{force:true}を使えばエラーが出ても強制的にチェックできるようにできるという認識です。
(間違っていたら教えてください)

エラーが出ても強制的にチェックできるようにするのは基本的にありえないと思っています。
このオプションを使うタイミングのイメージ感が湧いていないのですが、どういう時に使うのでしょうか?

 cy.get('.action-checkboxes [disabled]')
        .check({ force: true}).should("be.checked")

        cy.get('.action-radios [type="radio"]')
         .check({ force: true}).should("be.checked")
0

1Answer

force オプションの意味は Cypress のドキュメントに書いてあります。

かいつまんで言えば、 force をつけない場合、対象の要素が非表示なら表示されるまで待ったり、アニメーション中なら終わるまで待ったりといった一連の自動的なウェイトが入ります。 force をつけるとウェイトを飛ばしてすぐにチェックを試みます。

使いどころはウェイトが邪魔になるときです。以下のサンプルコードでは disabled なチェックボックスにチェックを入れようとしていますが、自動ウェイトが入ると disabled でなくなるまで待とうとします。ウェイトせずに無理矢理チェックを入れたいので force をつけているということです。

 cy.get('.action-checkboxes [disabled]')
        .check({ force: true}).should("be.checked")
0Like

Your answer might help someone💌