問題タブ [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 - GUI 自動化テスト - ウィンドウ ハンドルに関する質問
当社は現在、コンパクトなフレームワーク アプリケーション用の GUI 自動化テスト ツールを作成しています。最初に多くのツールを検索しましたが、適切なものはありませんでした。
このツールを使用すると、テスト ケースを記録し、それらをグループ化してテスト スイートにすることができます。テスト スイートごとにアプリケーションが生成されます。このアプリケーションは、テスト対象のアプリケーションを起動し、ユーザー入力をシミュレートします。
通常、このツールは問題なく動作しますが、シミュレーション ユーザー入力にウィンドウ ハンドルを使用しているため、多くのことを実行できません。たとえば、コントロールの名前を取得することはできません (キャプションを取得するだけです)。
ウィンドウ ハンドルを使用するもう 1 つの問題は、変更のチェックです。現時点では、コントロールのクリックをシミュレートし、その結果に応じて、アプリケーションが次のステップに進んだかどうかがわかります。
そのようなことを行うための他の(より簡単な)方法はありますか(たとえば、メッセージキューなど)?
c# - UIAutomation を使用して古い ActiveX SSUltraGrid を読み取る/操作する方法
ActiveX コントロールを使用した古い Win32 アプリケーションの自動テストを調査しています。私は、Microsoft UIAutomation を使用する White (Thugthworks から) を使用しています。コントロールに関連する AutomationElement を見つけることができますが、それを操作するにはどうすればよいですか?
Spy++ はグリッド コントロールを単一のウィンドウと見なすため、行、列、またはセルと直接対話することはできません。テスト コードから SSUltraGrid コントロールと通信するにはどうすればよいですか?
乾杯ナイジェル
ui-automation - Windowsでポップアップメニュー項目をプログラムで選択する方法は?
私は小さなウィザードを書いているアプリを持っています。マウスを適切なボタンやメニューに移動してクリックすることで、アプリの小さな部分を自動化し、ユーザーが見ることができるようにしました。
これまでのところ、マウスをツリー項目に移動し、右クリックを送信しています。これにより、TrackPopupMenu を介してメニューがポップアップします。次に、マウスをポップアップ メニューの適切な項目に移動します。私が理解できないのは、メニュー項目を選択する方法です。
左クリックをメニューの所有者ウィンドウに送信しようとしたり、メニューの所有者に WM_COMMAND を送信しようとしたりしましたが、何も機能しません。
メニューはそれ自体がウィンドウだと思いますが、私が持っている HMENU から HWND を取得する方法がわかりません。
クリックをポップアップ メニューに PostMessage する方法について何か考えはありますか?
PS マウスの駆動とメッセージの投稿に別のスレッドを使用しているため、TrackPopupMenu が同期していても問題はありません。
wpf - UI オートメーションと WPF の経験
かなり大規模な WPF ベースのアプリケーションを開発しており、自動化された UI テストをテスト スイート (既に多数の単体テストが含まれています) に含めたいと考えています。
MicrosoftのUI Automation Frameworkは、プログラムを使用してアプリケーションを起動し、テスト セットアップで対話するのに最適なように思えます。ただし、このテクノロジのサンプルと経験に関する確実な参考文献を見つけるのに苦労しました。MSDN で入手できる記事や小さなサンプルだけでは、それが確実な選択であると確信するには不十分です。
では、テスト スイートで UI Automation Framework を実際に使用した経験のある人はいますか? 注意事項と落とし穴は何ですか?テスト スクリプトを作成する際のベスト プラクティスはありますか。スクリプト可能な形式に「記録して再生」できますか。アプリケーションからのテストをどの程度容易にする必要がありますか。それをどのように自動ビルドに組み込みましたか。UI オートメーション フレームワークとは別の方向に目を向けるべきでしょうか?
ここにあなたの経験を投稿するか、私が見逃したかもしれないいくつかの良い参考文献へのリンクを自由に投稿してください
.net - ToolStripStatusLabel を使用した UIAutomation
私は WinForms アプリを持っていますが、ToolStripStatusLabel
UIAutomation を介して a のテキストにアクセスできないようです。Microsoftは、 s (およびおそらくその中の項目)のサポートが制限されていることを暗示StatusStrip
していますが、これは機能する必要がある基本的な使用例のようです。
コントロールはControlType.Edit
UISpy で表示され、読み取り専用のテキスト ボックスのように見えますが、値はテキストではなく常に名前と同じです。
UISpy のプロパティは次のとおりです。
myLabel.Text = "something"
基本的に、 UIAutomation を介して何らかの方法でその値を取得できることを望んでいます。
.net - Microsoft UI Automation を使用して UI テスト自動化方式をうまく実装した人はいますか?
自動化された UI テスト フレームワーク/ソフトウェア ツールを探しています。過去に私はTestCompleteを使用していました。これは優れたソフトウェアですが、GUI テスト自動化の概念は十分に難しいと見なされたため、いくつかの投稿を書いて不満を 述べました。
サードパーティのテスト自動化ツールの問題の 1 つは、ツールのサポートが貧弱であることは言うまでもなく、生産性を高めるために新しい言語を学ばなければならないことです。私は現在、.Net 3.0 とWhite Frameworkに付属するMicrosoft UI Automationを調査することを計画しています。しかし、それを行う前に、結果がどうなるか知りたいです。
誰でもこれについて共有する経験がありますか? アプリケーションで UI 自動化を使用して、持続可能で成功するテスト スイートを作成しましたか?
編集:これは非常に難しい質問のようです。この数日以内に回答が得られない場合は、報奨金を設定します。
c# - AccExplorerは新しいコントロールを見つけられない/古いコントロールはまだ残っていると思う
このアプリケーションには、動的に作成される多くのコントロールがあります。たとえば、ナビゲーションペインには、ユーザーがアプリ内を移動すると変化するリンクのグループが含まれています。初めてAccExplorerを使用してこれらのリンクを選択すると、完全に検出されます。ただし、別のページに移動した後、AccExplorerは更新されたナビゲーションペインにリンクを表示できません。実際、古いリンクコントロールは引き続きAccExplorerツリー階層に表示され、それらをクリックすると、AccExplorerはアプリケーションの実際のウィンドウの境界外にあるデスクトップの領域を強調表示します。
コントロールは変更されましたが、AccExplorerはそれらを認識しません。それでも、階層は同じであると考えています。
私が奇妙だと思うのは、AccExplorerを閉じてから、AccExplorerの新しいインスタンスを開くと、同じ結果になることです。AccExplorerで新しいナビゲーションコントロールを選択すると、新しいリンクが表示されません。古いリンクで古い階層を再作成します。新しいリンクを表示する唯一の方法は、アプリケーションを閉じてアプリケーションを再度開き、手動で新しいページに移動してから、AccExplorerでコントロールを選択することです。
ナビゲーションコントロールはDevExpressコントロールです。OSはWinXPです。AccExplorer2.0。UIAutomationを使用したいのですが、すべてのDevExpressコントロールがUIAutomationをサポートしているわけではありません。これらのギャップを埋めるためにMSAAを使用しようとしています。
cruisecontrol.net - CruiseControl.NET と UI 自動化のテスト
UI 自動化テストのフレームワークとして White を使用しています。(サービスとして実行されている) CruiseControl.NET を使用して、White によって記述されたテストを実行できますか?
私は一日中成功せずに努力してきました。White フレームワークにはインタラクティブなデスクトップが必要です。私が得ているエラーメッセージは次のとおりです:「アプリケーション用に作成されたメインウィンドウが見つかりませんでした」
.net - How to Invoke Shortcuts Keys in the UI Automation? / .NET
I'm writing program to automate win32 form. I'm using Microsoft UI Automation library. I don't know how I can get and invoke predifined shortcuts key on that form. Now I simply get AutomationElement of the MenuItem and invoke click on that element. Any solutions? Does anybody do this?