問題タブ [ios-ui-automation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
iphone - iPhoneの自動テスト
これはロングショットになると思いますが、やってみようと思いました。iPhoneシミュレーターの自動テストについて知っている人はいますか?Seleniumのようなものがあれば、それが大好きですが、iPhoneシミュレーター用です。アサーションのような派手なものは必要ありません。画面のタップを偽造して、トラックパッドの悪用をやめることができるものだけです。:)
タップまたはキーイベント(Android over adbなど)をiOSデバイスに送信する方法はありますか?
iphone - iPhone Simulator で UI Automation ツールを使用できますか?
Instruments と iPhone SDK 4.0 で新しい UI 自動化ツールを使用してきましたが、これまでのところ、iPhone シミュレーターで実行することはできませんでした。ビルド フォルダー、~/Library/Application Support/iPhone Simulator 内のアプリ フォルダーなど、可能なすべての場所にターゲットを設定しようとしましたが、実行しようとするとエラー メッセージが表示されます。
-[UIATarget_0x5a1e3b0 frontMostApp]、/SourceCache/UIAutomation_Sim/UIAutomation-37/Framework/UIATargetElements.m 行 437 で予期しないエラーが発生しました。
誰かがこれを機能させましたか?
iphone - UIAutomationでcaptureScreenWithNameをiPhoneシミュレーターで動作させるにはどうすればよいですか?
私はiPhoneオートメーション、およびiOS4によって導入されたUIAutomationも初めてです。最近、UIAutomation API によって提供される captureScreenWithName を使用してスクリーンショットを撮る必要があるまで、UIAutomation を使用して iPhone シミュレーターでアプリのテストを自動化しています。しかし、それは私にとってはうまくいきませんでした.Googleで検索したところ、この方法はiPhoneシミュレーターでは機能しないようですが、実際のデバイスでは機能することがわかりました...
私の質問は、このメソッドを iPhone シミュレーターで機能させる方法はありますか? いくつかの設定を変更することによって?前もって感謝します!
iphone - UIAutomation フレームワークはシミュレーターで動作しますか?
私はiPhoneオートメーション、およびiOS4によって導入されたUIAutomationフレームワークを初めて使用しています。最近、UIAutomation を使用して、計測器を介して iPhone シミュレーターでアプリのテストを自動化していますが、「-[UIATarget_0x5a20d20 frontMostApp]、/SourceCache/UIAutomation_Sim/UIAutomation-37/Framework/UIATargetElements.m 行 437 で予期しないエラーが発生しました」のようなエラーが表示されます。
また、iOS4 にアップデートした後、iPhone 3G デバイスでアプリを実行して試しました。しかし、計測器は「オートメーションはこのデバイスではサポートされていません」という警告を表示します。
私の質問は、UIAutomation がシミュレーターで動作するかどうかです。3GS や iPhone 4.0 などの新しいデバイスを購入して実行する必要がありますか? 前もって感謝します...
iphone - UIAutomation を使用した計測器での予期しないエラー
現在、IOS SDK 4.0.2 を使用しており、UIAutomation の方法を学習しています。残念ながら、シミュレーターで単純な Java スクリプト テスト (変数を割り当てるだけ) を実行しようとすると、次のエラーが発生することがわかりました。
これが私が実行しようとしていた「スクリプト」です
そして、これは、frontMostApp() が呼び出されたときに null が返されるためであることがわかりました。テストは、4.0.2 の実際のデバイスで問題なく実行されます。
主な質問: シミュレーターで 4.0.2 でこの問題を解決する方法はありますか? この問題があった以前のバージョン (4.0.1) の解決策に注目しましたが、試しても成功しませんでした。
まだあまりドキュメントがありません。アドバイスをいただければ幸いです。
ローレン
iphone - UIAutomationを使用したアラートの処理
UIAutomationを使用してUIAlertViewの存在をテストしようとしていますが、ハンドラーが呼び出されません。
私のJavaScriptの冒頭で私は次のように書いています:
私が理解しているように、onAlert関数を指定するとすぐに、テスト中にalertViewが表示されたときに呼び出されるはずです。だから私はalertViewを表示するテストを実行します、これはアラートを表示するコードです:
インストルメントでテストを実行すると、アラートが表示されますが、ハンドラーが呼び出されることはありません。誰かがUIAutomationでイベントハンドラーを使用できましたか?
ありがとう、ヴィンセント。
javascript - iPhone UIAutomation ボタンのタップが起動しない
iPhone Simulator と最新の iOS SDK 4.1 を使用して、Instruments で UIAutomation を使用しようとしています。問題のある JavaScript のスニペットを次に示します。
「theButton」のボタン名は、すべてのボタンの名前をログに記録しているときに表示されるだけでなく、logElementTree にも表示されるため、Interface Builder で正しく構成されていますが、何らかの理由でタップされません。スクリプトの早い段階でタップされている他のボタンがあり、タップされていないボタンの時点でスクリプトを中止すると、シミュレーターでボタンをクリックでき、期待どおりに動作します。
編集: 上記のループの JavaScript では、main.buttons() 配列の各ボタンをタップし、ビュー上の 12 個の同一のボタンのうち 1 つだけがタップされます。
また、ご参考までに、javascript ファイルの先頭に次のコードがあります。
次に、logElementTree がログ メッセージに入れる一連のエントリからのボタン情報を示す行を示します。
iphone - 単体テストは素晴らしいが、
私は時間をかけていくつかの単体テストをセットアップし、XCode などでターゲットをセットアップしましたが、それらはいくつかのクラスで非常に役立ちます。でも:
アプリケーション全体を起動したくない小さな UI 部分をテストしたい。合格/不合格の概念はありません。ピースを「見る」必要があり、これを行うために関連するすべてのクラスのダミー インスタンスを作成できます。私の質問は、XCode でこれを設定するにはどうすればよいですか?
各クラス (またはクラスのグループ) ごとに別の XCode プロジェクトを使用できることはわかっていますが、それは少し面倒です。それぞれの別のターゲット?
iphone - UIAutomationでピッカーを処理する
コンポーネントが1つだけで、コンポーネントに5つの値があるピッカービューがあります。
以下のように、ホイールの数とコンポーネントの値を取得できました
「pickerWheels[0].values()[1]」のようにステートメントをログに記録すると、最初の項目が表示されます。
問題は、それをどのようにタップするかです。
pickerWheels [0] .values()[1] .tap(); //機能しません
ピッカーホイール要素をタップする方法について、誰かが入力を提供できますか?
また、UIPickerViewAccessibilityDelegateを実装して、//各コンポーネントのアクセス可能性を設定してオーバーライドしてみました。
javascript - UI オートメーション iPhone アプリケーションのテストで UIPickerView をどのように処理しますか?
次の UI オートメーション スクリプト コードでは、UIPickerView から値を取得できますが、ピッカーを選択できません。
私は何を間違っているのでしょうか?