問題タブ [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 投票する
2 に答える
1281 参照

wpf - white プロジェクトを IronPython プログラムにインポートするにはどうすればよいですか?

私はいくつかの UI 自動化ソフトウェアに取り組んでおり、このプロジェクトの要件では Windows 環境でのみ使用されるため、最近プロジェクトを Python から IronPython に移動しました。ただし、Windows Presentation Foundation (WPF) を使用するプログラムの UI を自動化する必要があります。White という便利そうなライブラリを 1 つ見つけました。

http://white.codeplex.com/

したがって、IronPython プログラムでこれを使用したいと考えていますが、これまでに見た、C# で記述されたモジュールまたは C# インターフェイスを使用したモジュールをインポートするサンプル コードはすべて、Microsoft/Windows ビルトイン用でした。こちらの記事によるとIronRubyでできるので参考になればいいなと思いました。

http://www.natontesting.com/2010/02/17/how-to-test-a-wpf-app-using-ironruby-and-white/

ただし、IronRuby が White をインポート/参照する手段/構文は、IronPython が行う方法とは大きく異なると想像する必要があります。IronPython と White を使用しているという他の開発者による投稿も見つけましたが、実際に White を参照するためのコードを含む投稿は見つかりません。これについてどうすればいいですか?

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

wpf - ホワイト UI オートメーション: WPF DataGrid セル値を取得しますか?

私は白いプロジェクトに非常に慣れていないので、その機能をチェックするだけでした...私の仕事では、wpfとデータグリッドを集中的に扱っています.列がDataGridTemplateColumnの場合、データグリッドセルの値を取得できませんでした.

DataGridTemplateColumn のみではなく、すべての列タイプに対応しています。

私のデータグリッドは次のとおりでした:

そして私のテストは:

しかし、セル数は常に= 0です。セル値を取得する必要があります!!!? 助けてください!

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

wpf - ホワイトフレームワークでテストするときに要素がバインドされない

ViewModelのプロパティにバインドされたテキストボックス内のテキストを表示する単純なウィンドウを備えたwpfアプリケーションがあります。アプリケーションを実行すると、テキストボックスにテキストが表示されますが、白ベースのテストを実行すると、ランダムに異なる結果が得られます。

  • ほとんどの場合、バインドされておらず、テストは失敗します。
  • バインドされている場合もありますが(ウィンドウ内のテキストは白で表示されます)、コードがウィンドウを取得しようとすると、白は例外をスローします。
  • 時々(本当に少数)それは動作します。

私が実行しようとしているコードは次のとおりです。

背後にあるコード:

テストは次のようになります。

何か案が?

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

c# - C#でジェネリック型をパラメータとして取得するメソッドにclassNameを渡す方法

White/UIAutomation の画面リポジトリを反映したクラスがたくさんあります。リポジトリを使用するには、アプリケーション ウィンドウの画面を反映する多くのクラスを作成する必要があります。

リポジトリを作成するには、次の方法を使用します。

私が用意したクラスであるジェネリック型を渡します。

私がやりたいことは、Dictionary(stringClassName, string windowTitle) またはそのメソッドに渡す任意の Map を作成することです。問題は、Java ClassForName のように className を渡すことができないことです。

私は試しSystem.Activator ましたが、成功しませんでした。

Update1 皆さん 、私はコードの前に座っているわけではありませんが、質問が複雑にならないように努めます。

これは、私が使用していると思われる White リポジトリで見つけた方法です: https://github.com/petmongrels/white/blob/itemsmap/Components/Repository/Source/ScreenRepository.cs

私が覚えているように、VS は .Get を .Get<"class" type> として表示しました。うまく表現できなくてごめんなさい。私はこの用語に精通していないので、私と一緒に患者を迎えてください。

Update2

最後に、次のようなものを取得したいと思います。

そして、私は のコードを持っていますMyClassRepresentingWindow{1,2,3}。クラス名を Get メソッドに渡す方法がわかりません。入力時に、このクラスの文字列名があります。出力では、このメソッドが取得できるものを配信したいと考えてい.Get<T>ます。あなたが今私を理解してくれることを願っています。

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

ui-automation - UI Automation Verify v/s UISpy - UI 要素を見つける方法

C++ MFC アプリケーションの UI 操作を自動化しようとしています。UISpy および UIAVerify ツールを使用して、要素の自動化 ID を見つけようとしました。私はwin2k3を使用しています。

タブ コントロールがあり、そのオートメーション ID は UISpy には表示されますが、UIAVerify には表示されません。

問題は、Project White フレームワークまたは .net 3.0 の ui 自動化フレームワークを使用して記述した C# コードにも表示されないことです。

UISpy が取得する方法で、このコントロールを処理したいと考えています。UISpyがどのように機能するかを知る方法はありますか?

ありがとう!!!

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

c# - C# ホワイト フレームワーク オートメーション: ページが開かれたかどうかを確認する方法

ボタンをクリックした後に確認ページが開かれたかどうかを確認するには、white/c# コードを記述する必要があります。開かなかった場合は、何らかの問題があり、テストが失敗する必要があることを意味します。その後、別のボタンを押すためにそのページを使用する必要があります。

white/c# 構文を使用してそれを行う方法を知っている人はいますか?

前もって感謝します

LE: これは私が書いたものです

そして、書いているテストで

ここで、depositPage は父ページです

保存をクリックすると、確認ページが開かれたかどうかをアサートする必要があります。そうでない場合は、テストが失敗する必要があります。

ディレクティブを使用してページを取得する方法は知ってGetPage<>()いますが、そうする必要はありません。

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

winforms - White UI フレームワークを使用しているフォームで DataGrid が見つからない

数日前、 Windows アプリケーション(フレームワーク 2.0)の自動化された UI テスト ケースを作成するという要件を受け取りました。

テスト UI フレームワークとしてWhiteを使用することにしました。White フレームワークを使用して 3 つのレコードを表示しているDataGridコントロール (注: これは DataGridView ではありません) が見つからないように見えることを除いて、すべてがうまく機能します。

VisualUIAVerifyアプリケーションを使用して、実際に DataGrid がフォーム上にあり、それが UI アイテム タイプ「<strong> Table」であることを検証しました。コントロールに正しい AutomationId を使用していることは間違いありませんが、うまくいきません。

前に述べたように、DataGrid を除くフォーム上のすべてのコントロールを見つけることができます。私は何か間違ったことをしていますか?それとも、白は単に DataGrid をサポートしていないということですか。

どんな助けでも素晴らしいでしょう。ありがとう

ボビー

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

white-framework - ホワイトのGetWindow()メソッドはWin 7、32ビットで失敗します

私は初めてホワイトを試しています。サンプルテストを実行してメモ帳のウィンドウを取得しようとしましたが、機能しないようです。これが私がしたことです:

この最後の行は、タイプ初期化例外としてエラーをスローします。Whiteのソースコードに入ると、ウィンドウが見つかりません。

使用 GetWindows()して最初のウィンドウを取得しようとすると、正常に動作します。

ただし、子オブジェクトにも同じエラーがスローされます。

私はWin7、32ビットを持っています。ビルド構成によると、Debug|x86です。Win XP、32ビットでも同じコードを試しましたが、うまくいきました。

誰かが私がこれについてどうやって行くのか教えてもらえますか?

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

c# - ホワイトオートメーション-

ホワイトがプログラムを開いてボタンクリックに自動化するのに苦労している

実行されますが、 var button = Sim.Get(searchCriteria); に到達するとエラーが発生します。そのオブジェクトがオブジェクトのインスタンスに設定されていません。Sim が null であることを確認しています。誰でも私が犯しているのを見ることができる間違い。

0 投票する
4 に答える
28033 参照

.net - RDCを使用しないWindowsおよびGUIテストでのJenkins

Jenkinsのマスタースレーブ構成があります。.NETプロジェクトは、Windowsで実行されているスレーブJenkinsインスタンスによって構築されています。

GUIテストはたくさんありますが、リモートデスクトップ接続(RDC)セッションが開いている場合にのみ実行されるようです。

RDCを使用せずにテストを実行しようとすると、Jenkinsはテストの進行状況を表示しません。次に、スレーブのデスクトップに接続すると、起動されたアプリケーションのメインウィンドウが表示されますが、UIテストフレームワーク(白)はアクションを実行できません。

Jenkinsスレーブは、JavaWebStartを介して起動されます。

残念ながら、RDCセッションなしではGUIテストを実行できないといういくつかのWebサイトを読みました。

私はそれが真実であることを確認したいだけで、回避策があるかどうか疑問に思います。