3

いくつかの syncFusion (GUI フレームワーク) コンポーネントを使用して、比較的重い C# GUI を作成しています。クライアントのロギング機能を追加して、QA が後でクライアント イベントを再生して、クライアントが本番環境で使用したバグやその他のワークフローを分析できるようにしたいと考えています。

すべてのクライアント キーストローク、マウス イベントなどを記録および再生する既製のモジュールは存在しますか? (Windows C# クライアントに簡単に統合できる場合は、C++ モジュールも機能する可能性があります。)

また、生成されたログを使用して、クライアントのどの機能が最も使用され、どの機能がほとんど使用されていないかを分析して、どのバグを優先し、どの機能を削除/強化する必要があるかを判断したいと思いますか? したがって、基本的には、クライアントがログをローカル ディスクに書き込むか、ネットワーク経由でサーバーに書き込むようにしたいと考えています。

パフォーマンスについてもやや心配です。ある程度のヒットは許容されますが、すべてのイベントのログ記録がクライアントのパフォーマンスをどの程度低下させるかについて考えてみませんか?

ここでのポイントは、QA テスト自体ではなく、本番環境ですべてのクライアント イベントをログに記録することです。

Aydsman のコメントに基づく編集:古い同様の議論Benji のサイトを読んだ後、このタイプの「ダッシュボード」に多くの関心があるように見えますが、現時点ではオープンまたはクローズドの製品またはソリューションは存在しません. Benji のサイトにステータスに関する質問を投稿しましたが、サイトはかなり静かに見え、6 月以降応答がありません。Benji のアイデアは、多かれ少なかれまさに私が探していたものですが、製品はまだ存在していないようです。これはかなり驚くべきことです。既存の製品がないことは、そのようなシステムの実装は、当初考えていたよりも複雑でなければならないことを意味すると思います。探し続けて、後で何かを見つけたいと思っています。

4

3 に答える 3

1

ここの他のポスターでほのめかされているように、この種のことを行う商用製品があります. 独自のものを作成する場合は、システム フック DLL と呼ばれるものを作成する必要があります。これは、C++ でかなり簡単に実行できます。作成した場合は、おそらく pinvoke を使用して簡単に統合できます。実際、すでに同様のことを行っている人については、pinvoke.net を参照することから始めます。

フック DLL を使用すると、すべてのマウス イベントとキーボード イベントをインターセプトできます。マウスとキーボードのイベントを挿入することもできます。したがって、これら 2 つを組み合わせると、intercept = 記録、inject = 再生となります。

始めるのに適した記事のリストを次に示します。Code Project Hook DLLs

于 2008-11-16T00:48:15.810 に答える
0

自動化された GUI テストを実行する製品を購入できるのに、なぜコードを書くのでしょうか?

于 2008-11-06T18:28:10.517 に答える
-1

log4netについて聞いたことがありますか?私は1つのプロジェクトで小規模に使用しました-それはあなたのニーズに合うかもしれません。また、ロギングのためのアスペクト指向およびIoC手法についても調査しました。特定の手法によってはパフォーマンスに多少の影響がありますが、ログに記録されたコードの保守が容易になります。Spring FrameworkのSpring.NETポートは、汎用のメソッドレベルのロギングのためのいくつかのオプションを提供します。これらのいくつかの組み合わせを使用して、アクティビティの「スクリプト」ファイルと、テスト環境でログに記録されたアクションを読み取って再実行できる「再生」モジュールを生成できます。

于 2008-11-14T20:19:54.243 に答える