Detoxを使用してReact-NativeWebViewをテストする方法

Detoxを使用して、最終的にWebViewのエンドツーエンドのテストを作成できます。

…まあ、とにかくAndroidでは。

現時点では、iOSはサポートされていません。ただし、それは将来変更される可能性があります。さらに、Androidでテストするための機能は存在しますが、DetoxのドキュメントはWebビューテストを含むように公式に更新されていません。これは、作業が進行中であり、かなり静まり返っている可能性があることを示しています。

とにかく、AndroidでWebビューをテストできることは、開発者にとって大きな飛躍です。

アプリにWebViewを追加する方法

WebViewを含めるには、react-native-webviewパッケージを依存関係としてに追加しますpackage.json。WebViewコンポーネントをインポートし、以下に示すようにソースを渡します。

testIDテストの実行時にデトックスで検出できるように、必ずWebViewにを含めてください。

Webビューのテストを作成する方法

この例では、Twitterのログインページを使用しています。ユーザーに次のことを許可したいと思います。

  • ユーザー名を入力してください
  • パスワードを入力してください
  • そして、ログインボタンをクリックします

Webビューの読み込みに時間がかかる場合があるため、テストを実行する前に読み込みが完了するように遅延を追加すると便利な場合があります。

以下に示すように、DetoxのWebオブジェクトを使用して、ビューと対話し、配置された要素に対してアサーションを作成できます。

DOM要素の検索:

DetoxのWebはAndroidのExpresso-Web上に構築されており、DOM要素を選択するための関数のリストを提供します。

  • id —IDによってDOMツリー上の要素を検索します
  • text -CSSクラスによってDOMツリー上の要素を検索します
  • cssSelector -指定されたCSSセレクターに一致するDOMツリー上の要素を検索します
  • name -「name」属性によってDOMツリー上の要素を検索します
  • xpath -XPathによってDOMツリー上の要素を検索します
  • href-<a>リンクテキストによってDOMツリー上の要素を検索します
  • hrefContent-<a>部分的なリンクテキストによってDOMツリー上の要素を検索します
  • tag -タグ名でDOMツリー上の要素を検索します

要素を見つけたら、次の自明の方法でユーザーの操作をシミュレートできます。

  • tap
  • typeText
  • getText
  • clearText
  • replaceText
  • scrollToView
  • getCurrentUrl
  • getTitle
  • runScript
  • runScriptWithArgs

デトックスウェブには、楽しいマッチャーのセットも付属しています。

  • toExist()
  • toNotExist()
  • toHaveText()
  • toNotHaveText()

可能性は無限大!

提案された投稿

脳卒中の壊滅的な結果を避ける: 家族の旅から学ぶ 。

脳卒中の壊滅的な結果を避ける: 家族の旅から学ぶ 。

はじめに 脳卒中は、いつでも誰でも起こり得る医療上の緊急事態です。これは、脳の一部への血流が中断され、脳機能が突然失われることで発生します。

マルチモジュール プロジェクトで Dagger2 から Hilt に移行する

マルチモジュール プロジェクトで Dagger2 から Hilt に移行する

マルチモジュール プロジェクトで Dagger から Hilt に移行するためのステップバイステップ ガイド。プロジェクトの構造 プロジェクトを視覚化するには、NetworkModule、StorageModule、CommonModule、FeatureModule などの複数のモジュールが含まれています。

関連記事

仕事週間で学ぶことはあなたが思っている以上に重要です

仕事週間で学ぶことはあなたが思っている以上に重要です

私たちは、自分にとって良いとわかっていることを実行するのに苦労していることによく気づきます。大切な人に愛していると伝えることから、海賊のように話すことを忘れないことまで、すでにそうしたことを行っているため、1日、1週間、または1か月のイベントは必要ないと主張する人が常にいます。

代名詞は超怖い

頻繁に起こることだが、突然、私は衝撃を受ける 再びミッドウェイだ <いいえ、太平洋にあるものではなく、カーニバルにあるものです> どの見出しも大音量で…..

ジョーダン・ニーリー殺害と「愛国的」人種差別の問題

米国は、人種差別的な行動と善良な米国人であることを同一視しないという重要な一歩を踏み出すことができるだろうか?

ジョーダン・ニーリー殺害と「愛国的」人種差別の問題

[警告: このエッセイには、ジョーダン ニーリー殺害の犯人を賞賛する人々のスクリーンショットが含まれています。] 法執行当局はついに、そしておそらくはしぶしぶではありましたが、ジョーダン ニーリーを死ぬまで首を絞めた男、ダニエル ペニーをその殺人罪で起訴しました。

ネットワークテレビツイッター

ネットワークテレビツイッター

古いものは再び新しくなり、以前はキラキラ輝いていたものがくすんで見えます。私は、JNCO ジーンズが 1990 年代後半の他のファッションとともにダウンタウンのクールな子供たちの間で復活したことについて話しているのではありません。