問題タブ [white-framework]

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.

0 投票する
0 に答える
467 参照

automated-tests - 一部のマシンで UI オートメーション ツリーが表示されない

私の開発マシン (Win 8.1 x64、.NET 4.5、NUnit、TD.NET、Console Runner) で正常に動作する White / UI Automation を使用する一連のテストがあります。同じスイートを実行している Win 7 の別の開発者は、UI 要素を取得しようとすると失敗すると言います。

調査するために、win 2008 R2 マシンをセットアップし、アプリとテストをそこに移動して、NUnit コンソール ランナーを使用して実行すると、そこでもテストが失敗します。

私はもう試した:

  • UI ツリー (LogStructure) をダンプすると、ツリーには明らかに多くの要素が欠けています。
  • 白の代わりに自動化 API を直接使用すると、まったく同じことが起こります。
  • Inspect と UIAVerify を使用してツリーを検査すると、予想されるすべての要素が表示されます。
  • アプリとテスト プロジェクトを x86 に変換し、x86 バージョンの NUnit コンソール ランナーを使用すると、同じ理由でテストが失敗します。

失敗は、テストがいくつかの要素 (メイン ウィンドウ、いくつかの内部ウィンドウ) を検出し、最上位メニューへの参照を取得できるが、メイン メニューのサブツリーで AutomationElement を検出できない (子を検出できない) ことです。エレメント)。

一部のマシンでこれが発生する理由は何ですか?

0 投票する
1 に答える
3295 参照

c# - Teststack.white 自動化フレームワークを使用してミニ ウィンドウを制御するにはどうすればよいですか?

Windows プラットフォームで外部アプリの UI 要素を制御するために、Teststack.white 自動化フレームワークを使用しています。これらのコマンドを使用して、アプリケーションのメインウィンドウを制御しました

これまで、このコードはアプリケーションを開いてメイン ウィンドウを制御し、[接続] ボタンをクリックしていました。クリックすると、新しいミニ ウィンドウが開きます。そのウィンドウを制御したいので、[OK]ボタンを押したいと思います。どうすればそのコントロールを取得できますか?

0 投票する
2 に答える
4329 参照

c# - teststack.white 自動化フレームワークを使用して、特定のモーダル ウィンドウが開くかどうかを確認するにはどうすればよいですか?

モーダル ウィンドウに関連する問題が発生しています。

自動化しているアプリケーション内で、ユーザーがデータを持っている場合はモーダル ウィンドウが開きますが、そうでない場合は開きません。「if ステートメント」をどのように配置できますか。たとえば、モーダル ウィンドウが存在する場合は、いくつかの作業を行います。そうでない場合はスキップします。このステートメントでエラーが発生したため

「子」という名前のウィンドウを検索できなかったため、例外がスローされています。そして私はそれが存在しないことを知っています。存在しない場合はスキップする必要があります。

0 投票する
1 に答える
1782 参照

ui-automation - teststack.white でパネルの子孫を取得する方法

いくつかの 3 ~ 4 パネルの子要素が必要ですが、これらのパネルでは最初の親パネルしか識別できず、残りには識別子がないため、最初の親パネルの子孫を見つけるのを手伝ってください。

たとえば、親 #1 のみが「ワークスペース」として識別できますが、直下の子パネルは検出できません (編集 #1/編集 #2 および不明なパネルの下のボタンが識別されます)。編集ボックスにアクセスしたいので、お願いしますヘルプ?

0 投票する
3 に答える
4360 参照

c# - ホワイトは、すでに実行中のアプリケーションでどのように機能しますか?

アプリケーションを自動化するために testStack/White ライブラリを使用しています。現在は問題なく動作していますが、アプリケーションが既に実行されている場合は例外がスローされます。たとえば、アプリケーションがすでに実行されている場合は、それを呼び出さないでください。つまり、このコード行をスキップできます

White に関する適切なドキュメントは見つかりませんでした。どんな助けでも大歓迎です。

0 投票する
2 に答える
5156 参照

c# - TestStack/White がアプリケーションのウィンドウを返さない

TestStackを使用して、アプリケーションで自動化プロセスを実行できることを知りたいです。そこで、ターゲット アプリケーションのすべてのウィンドウをカウントする簡単なコードを書きました。

まず、サンプル アプリケーション ( WinForm (.net) ) でテストしたところ、うまく機能しました(フォーム カウントとして 1 を返します)。

次に、ターゲット アプリケーションでテストしましたが、ウィンドウが返されません(フォーム カウントとして 0 を返します)。

ボタンの下の私のコード:

...................................................ここに画像の説明を入力

追加情報:

  • ボタンをクリックすると、ターゲット アプリケーションを正常に起動できます。

  • 私は自分のアプリケーション プログラミング テクノロジを知りませんでした。C++ と QT だと思いますが、違うかもしれません。

  • application変数を見ました。結果は次のとおりです。

ここに画像の説明を入力

質問:

  • この問題を引き起こす原因は何ですか?
  • この種のアプリケーションでプロセスを自動化するには、別の方法に切り替える必要がありますか (たとえば、低レベルの Windows API とメッセージを使用するか...)。
  • 私は TestStack のビギナーです。間違いはありますか?
  • あなたの提案は何ですか?

ありがとう...


編集1

  • ターゲット アプリケーション ウィンドウの ClassName: "Qt5QWindowIcon" (これを取得するために SpyUI を使用しました)
0 投票する
2 に答える
1107 参照

c# - Qtで作ったプログラムでUIオートメーションで親要素のボタン(子要素)にクリックイベントを送る

私のアプリケーション フレームワーク: C#.Net

.

ターゲット アプリケーション フレームワーク: Qt

.

私の自動化ツール:

  • TestStack/ホワイト
  • System.Windows.Automation 名前空間の便利なクラス

私は Qt アプリケーションを持っていて、次のコードでそのパネル (ダイヤラ パネル) の 1 つを取得しましたが、その要素を取得 (検索) できません!

…………ここに画像の説明を入力

.


私のコードの主要部分:

.


VS でdialerWindow変数 (DialerPageWindow)を見ました。それはスナップショットです: ここに画像の説明を入力

.


このタイトルの質問に対するこの回答を読みました: Windows UI オートメーションがすべての子要素を表示していませんか?

しかし

  • このボタンにクリック イベントを送信する方法が必要です。
  • ツール、ライブラリ、サード パーティのライブラリ、Windows メッセージなどを C# で提案して、この問題を解決してください。
0 投票する
3 に答える
4426 参照

ui-automation - TestStack.Whiteフレームワークを使用して変数タイトルでウィンドウを見つける方法は?

TestStack.White フレームワークを使用して、MS Word 2013 で新しいドキュメントを開くのを自動化しています。

Microsoft Word アプリケーションを次のように開いています。

その後、部分的なタイトルでウィンドウを取得しようとしています:

しかし、そのようなウィンドウがないという例外がスローされます。

ウィンドウのタイトル: Document1 - Word

問題は、「Document2 - Word」、「Document3 - Word」など、タイトルが毎回変わることを考慮して、部分的なタイトルでウィンドウを取得する方法です。

*Word も試してみましたが、この関数はワイルドカードをサポートしていないようです

私が呼び出した場合: List windows = application.GetWindows(); アプリケーションを起動した後、Windows リストが空です。

前もって感謝します、オスタップ

0 投票する
3 に答える
3982 参照

c# - 右クリックするオプションを見つける c# White/TestStack UI Automation

White\TestStack による言語 C# フレームワークを使用して、ソフトウェア プロセスの自動化を作成しています。

マウスの右ボタンでクリックしたときにオプションをキャプチャできないため、問題が発生しています。

画像プレビュー

これを試すために使用しているコード

オプションをキャプチャできず、変数が null になる propClick

私の英語が下手でごめんなさい:(

ヘルプ!

ありがとう :)