Microsoft UI Automation を使用して UI テスト自動化制度の実装に成功した人はいますか?

StackOverflow https://stackoverflow.com/questions/1249041

  •  12-09-2019
  •  | 
  •  

質問

自動 UI テスト フレームワーク/ソフトウェア ツールを探しています。過去に私が使っていたのは テスト完了, 、これは良いソフトウェアですが、GUI テスト自動化の概念は十分に難しいと考えられたため、次のように書きました。 いくつかの投稿不平をいう それについて.

サードパーティのテスト自動化ツールの問題の 1 つは、ツールのサポートが不十分であることは言うまでもなく、生産性を高めるために新しい言語を学習する必要があることです。今調べてみようと計画中です Microsoft UI オートメーション これは .Net 3.0 に付属しており、 ホワイトフレームワーク. 。しかし、その前に、その結​​果がどうなるかを知りたいと思っています。

これについて共有できる経験がある人はいますか?アプリケーションで UI 自動化を使用して、持続可能で成功するテスト スイートを作成しましたか?

編集:これはとても難しい質問のようです。数日以内に返答がなければ、報奨金を設定させていただきます。

役に立ちましたか?

解決 6

冷たい対応…これに対して適切な答えがない場合に備えて、ダミーの答えを返したほうがよいでしょう。

他のヒント

これは非常に遅い応答ですが (おそらくすでに出荷されています)、これを使用して WPF アプリケーションをテストしました。

VS2010 のベータ 1 バージョンを使用しているときに非常に不安定になり、いくつかのバグに遭遇しました。リリース版を使用すると、問題が少なくなりました。

WPF、VS UI オートメーション、WPF/Windows アクセシビリティをすべて同時に学習していたので、それは大変でした。完全に自動化された UI テストを作成するのが難しいという事実が、この難しさにさらに拍車をかけました。

VS2010 RTM の後でも、ラップしたネイティブ/カスタム ページで断続的な問題が発生しました。これは、部分的には子育ての問題が原因であり、部分的にはスレッド/プロセスの問題が原因だったと思います。

私が遭遇した最大の頭痛の種は、WPF ツールキットから使用したいくつかのコントロール、特に DataGrid コントロールに対してテストしようとしたときでした。これには UI 自動化の既知のバグがいくつかあり、私はそれらを回避するのにかなり苦労しました。

また、UI 自動化フレームワークがバックグラウンドでデータをキャッシュするといういくつかの課題にも遭遇しました。コントロールの更新データを取得するには、コントロールを再インスタンス化する必要があります (特に、コントロールの親設定が不適切な場合の可視性)。

他のアプリケーションから UI を継承したり、WebBrowser コントロールでラップしたり、カスタム コントロールを使用したりしていない、純粋な WPF または純粋な Win32 アプリがある場合は、おそらくそれを再度使用するでしょう。まだ決定しておらず、アプリがこれらのいずれかを使用している場合は、他のものを使用できるかどうかを検討します。おそらく、より限定的な統合テストを実行するためのより単純なスクリプトのセットを使用し、モック オブジェクトを使用して単体テストで残りをカバーしようとします。

ただし、過去6か月以内に使用していないため、走行距離は異なる可能性があります。

ここでは White テスト フレームワークを使用し、優れた結果をもたらしています。

フレームワークは win32 メッセージングを使用してコントロールを検索し、コントロールと対話します。ただし、コントロールがたくさんある大きなフォームではかなり遅くなりますが、それが私が遭遇した唯一の欠点です。buildbot と nunit-console を使用してテスト実行も自動化します。

私は、ironruby ベースの gem を書きました。 戸惑う MS UI オートメーション フレームワークをラップします。BBC を含むさまざまな企業で MS WPF アプリを自動化するために使用されて成功しています。これを使用するためのステップバイステップのガイドは次のとおりです。 http://www.natontesting.com/2011/08/27/step-by-step-example-of-bdding-a-wpf-app-with-cucumber-rspec-ironruby-and-bewildr/

私は C#.net を使用した MS UI オートメーション フレームワークを使用していて、これが非常にシンプルで役立つことがわかりました。問題自体は観察されませんでしたが、レポート生成サポートが欠けているため、特定のテスト ケースに基づいて独自のロジックを記述する必要があります。

全体的な満足度 :8/10。

Microsoft UI オートメーションの経験はありませんが、AutoIt を使用しています (http://www.autoitscript.com/autoit3/) GUI 自動化を少し実行します。Visual Studio アドインをテストするために使用しています。あなたの質問に対する正確な答えではありませんが、あなたにとっては興味深いかもしれません。

よろしく、

セバスチャン

これと同様のアプローチを使用して、.net Framework の UI 自動テストの軽量バージョンを使用しました。

http://msdn.microsoft.com/en-us/magazine/cc163864.aspx

タブの使用や、どのパネルを使用するかを決定する際に問題が発生しましたが、最終的にはフォームの再設計につながりました (つまり、デザインにもかなりの問題が見つかりました!)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top