問題タブ [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.
ui-automation - 最優秀自動化フレームワークデザイン
Nunit フレーム作業を使用するか、Visual Studio テスト プロジェクトを作成するかのどちらが、時間を節約し、効果的な自動化を行うための最良の方法ですか?
現在、Selenium IDEを使用してアプリケーションの最大部分をスクリプト化して実行時間を短縮しています(テストプロジェクトの実行よりもideの実行の方が速いと感じています) gotoif、while、regexp ..etcを使用して、データ駆動型の場合にのみSelenium RCを使用しますIDE で処理されていないメソッドとイベント。
私に提案してください私は正しい方法ですか?私はアプリケーションの自動化の初期段階にあるため、早期修正のためにこの質問をする方が良いです。
wpf - WPF UI オートメーション - 要素が多数ある場合に AutomationElement.FindFirst が失敗する
WPF アプリ (.NET 4) 用の自動化された UI テストがいくつかあります。これらのテストでは、UI オートメーションAPI を使用します。
AutomationElement.FindFirstを呼び出してターゲット要素を見つけ、それを操作します。
例 (疑似コード):
問題は、appWindow.FindFirst
要素が存在する場合でも、時々失敗して null を返すことです。UI オートメーション ツリーを手動で移動して出力するヘルパー関数を作成しました。正しい ID を持つ要素はすべての場合に存在します。
ウィンドウに他のアイテムがいくつ表示されているかに関係しているようです。他にアイテムがない場合は常に成功しますが、他の多くの複雑な UI 要素が横に表示されている場合、検索は失敗します。
ある種の内部要素制限に達しているように見えます。自動化 API のいずれかについて言及されている文書化された要素の制限が見つかりません。これを回避する方法はありますか? FindFirst
ツリー ウォーク自体を手動で実行する独自の実装を作成する必要があるかもしれないと考えています。これは不必要で遅いようです:-(
どんな助けでも大歓迎です
apache-flex - プリローダーで自動化が有効なフレックスアプリケーションを使用した null オブジェクト参照
フレックスアプリケーションを自動化しようとしています。プロジェクトに自動化ライブラリを追加すると、次の例外が発生します。
Flex 3.4 と maven2 を使用してアプリケーションをビルドしています。
フレックステストでこの問題が発生した人はいますか?
どうも。
誰かやった
debugging - 特定のテキストが表示されるたびにアプリケーションでアクションを実行する方法
アプリケーションがあり、Selenium を使用した Web 環境で行うのと同じ方法で、その入出力動作をデバッグしたいと考えています。この件について使いやすいアプリケーションを知っていますか?
c# - この .net UIAutomation アプリがリーク/プーリングしているのはなぜですか?
.net UIAutomation を使用するアプリを持っていますが、最終的にはメモリが不足し、表示されているウィンドウと閉じているウィンドウを監視するだけでクラッシュします。C# よりも VB でこれを表示する方が簡単に思えますが、どちらの方法でも同じことが起こります。基盤となるプロキシ オブジェクトのリーク/プールのようです。ほとんどのメモリは、.net メモリとして使用中として表示されていません。
これを取得してリークを停止し、引き続き StructureChangedEvents を監視する方法についてのアイデアはありますか?
c# - .NET での UI テストの自動化
ブラウザを開いて google.com にアクセスするプログラムを C# で作成する方法を知りたいです (簡単にできました)。
マウスを入力テキストフィールドに移動し、マウスをクリックしてからテキストを入力することを自動化するコードを書きたいと思います。マウスを検索ボタンに移動してヒットします。
iAccessible インターフェイスを扱う必要があることはわかっていますが、有用なソースが見つかりませんでした。
どんな助けでも大歓迎です。
c# - 要素が Microsoft UI オートメーションの PropertyCondition と一致するかどうかを確認するにはどうすればよいですか?
GridView の特定の行で AutomationElement を見つけようとしています (そのため、同一の要素が多数あります)。行内の要素を反復処理しています。マッチャーを使用して、特定の要素が渡した条件と一致するかどうかを確認したいと考えています。私は単純な PropertyConditions から始めています。
これが私のテストです:
コードは次のとおりです。
残念ながら、テストは失敗します。ルート要素 (デスクトップ) の ControlType は確かに ControlType.Pane ですが、奇妙なことに PropertyCondition.Value は "50033" です。
FindFirst / FindAllの外でPropertyConditionをテストする方法についてのアイデアはありますか?
(私の回避策は、独自の条件タイプを作成してテストすることですが、何かを誤解していないか、愚かなことをしていないかを確認したいと思います。)
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 で予期しないエラーが発生しました。
誰かがこれを機能させましたか?
asp.net - Microsoft UI オートメーション テストを使用して、Asp.Net ページで Silvlerlight オブジェクトを見つけるにはどうすればよいですか?
Silverlight xap をホストする asp.net ページにオブジェクトがあります (私の特定のケースでは IFrame にありますが、通常のオブジェクトにも興味があります)。UI Spy で要素を見つけることができますが、名前は "Silverlight Control" とだけ表示されています。自動テストで AutomationElement を見つけようとしても失敗します (コントロールは毎回 null です)。Silverlight コードまたは html に役立つ設定はありますか? 同じページに複数の Silverlight コントロールがある場合、どうすれば区別できますか?
UIスパイ
編集:画像を追加しました。オブジェクトが IFrame 内にあることにも気付きました。 UISpyImage - タイトル名が削除されました
c# - GUI-テスト自動化:c#を使用したpinvokeによるWinFormsボタンの検索
アプリケーション用にC#で小さなGUIテスト自動化ツールを構築しています。テストツールの機能の1つは、テストされたアプリケーションからポップアップするダイアログを閉じることです。
私が抱えている問題は、完全なクラス名を付けずにクリックするボタンを見つけることです。FindWindowExメソッドを使用して、クリックしたいダイアログボックスとボタンを取得しました。ボタンのキャプションは知っていますが、問題はボタンのクラス名も指定する必要があることです。クラス名は常に同じではありませんが、「WindowsForms10.BUTTON.app.0.3ce0bb8」のようになります。たとえば、アプリケーションをローカルで起動するか、クリックワンスで起動するかによって、「3ce0bb8」の最後の部分が異なります。
だから、私の質問は、この「WindowsForms10.BUTTON.app」のようなクラスの最初の部分(常に同じ)を指定するだけでボタンを見つけるにはどうすればよいですか?または他の方法でこれを解決できますか?
dllのインポートは次のようになります。
ボタンをクリックしようとすると、私のコードは次のようになります。