エスプレッソ
現在反応し、ネイティブとリソース-IDを設定するので、あなたには、いくつかのコードを記述する必要がある複雑なアクション(のような要素を待つ)、他のものを作るために方法はありませんかなり良い経由で仕事らしいですアンドロイドスタジオの「レコードエスプレッソテスト」ボタン。
- 使用することは、あなたが見つけることができる
ここ
要素
は、その要素(のようなelement.perform(click())
)でアクションをpeform取得するために使用onView(allOf(withContentDescription("elementId"), isDisplayed()))
要素(例えば。 "ELEMENTID")のIDとして
accessibilityLabel
を支えます完全試験
https://gist.github.com/cybergrind/0a2ad855352a5cd47cb5fb6a486c5eaa
appium
あなただけのアクションを実行し、スクリーンショットをキャプチャしたい場合は、あなたがappiumでこれを行うことができます。
- 使用はウェブドライバ使用中の要素
- のIDとして
accessibilityLabel
を支える「(saveScreenshotと
- キャプチャスクリーンショットをwaitForElementByAccessibilityId out.png - )あなたは最終的に(jsの例のようなものを持っていますappiumでテスト
を実行したディレクトリにout.png 『ファイルを ')>これが作成されます』:
AndroidのaccessibilityLabels
対10
driver.waitForElementByAccessibilityId('searchInputAcc', 5000)
.type('bold\n')
.sleep(5000)
.saveScreenshot('out.png')
iOSのAndroidのためにあなたが(ようにテキスト、ビューなど)任意の要素にaccessibiltyLabel
を自由に使用しているようだが、iOSのは、のようなすべての要素にアクセスを設定しません。アドノイド。
あなたはText
のラベルを設定した場合、あなたのラベル
<Text accessibilityLabel="my_text">content</Text>
は、あなたがそう基本的にあなただけのこのプラットフォーム
のためのあなたのテキストノードに
accessible
属性を設定することができ、iOSの上等しい
content
にラベルを与えると等しくなりません
<Text accessible>content</Text>
View
と同じこと - iOSはラベルを無視します。
これまでのところ、iOSの多くの要素はカスタムアクセシビリティラベルでは機能しません。以下は
あなたはクロスプラットフォーム反応し、ネイティブのテストを使用でき
のためのアプリケーションをテストするために使用できる要素のリストである:
TouchableHighlight
が - ちょうどあなたができる、iOSとAndroid上で同じように動作しますaccessibilityLabel
Text
を設定 - accessibilityLabelは、内側のテストと同じでなければなりません+あなたはアクセス属性に
を設定する必要があります0
(完全に両方のプラットフォーム用に)動作しません。
P.S.我々はまだ、すべての可能な要素をテストしたので、我々の結果
デバッグのために他の要素のためのあなたの結果を追加したり、待機していない
あなたはルート要素、印刷のソースを取得し、(デバッグ目的のためにXMLとしてそれを読むことができますfor webdriver.io:http://webdriver.io/api/property/getSource.html)