7

標準コントロールを備えたいくつかのモーダル UserForms で構成される GUI を中心に展開する、かなり大きな Excel アドインで自動回帰テストを開始しようとしています。

主な問題は、私が調べたほとんどの自動テスト ツール (Rational Robot、AutomatedQA TestComplete、Network Automation Automateなど) が VBA コントロールを完全にサポートしていないため、それらのテストはマウス クリックやキー押下を再生してしまうことです。本当に保守可能です。理想的には、VBA フォーム コントロールを認識するテスト ツールが必要なので、「(237, 58) をクリックして 500 ミリ秒待つ」のではなく、「このボタンを押して、このリスト ボックスが変更されるのを待つ」と言えます。

テスト自動化を VBA としてアドインに組み込むことも検討しましたが、ユーザーの時間のほとんどは、バックグラウンドで実行されている VBA を停止するモーダル ダイアログの操作に費やされているため、それはほとんど問題外です。

私の質問 - 自動化されたテスト ツールの使用経験がある人はいますか?

a) VBA ユーザー フォーム コントロールを認識し、確実に操作できる

b) 記録と再生だけでなく、条件付き分岐と成功/失敗のログを使用したテスト スクリプトをサポートしていますか?

あるいは、VBA 内からアドインを起動できるように、VBA の実行を一時停止するモーダル ダイアログの問題を回避する方法を知っている人はいますか?

しばらく QA フォーラムを見回しましたが、何も見つかりませんでした。

ご協力いただきありがとうございます、

-マーティン

4

1 に答える 1

2

あなたの言うことを実行するツールは知りませんが、別の方向から攻撃することを考えたことはありますか?

ここでは、個々のメソッドを単体テストできるように、「通常の」VB/VBA クラスにプッシュ ダウンできるロジックの量について少し推測しています。おそらく、そのようなクラスはイベントを公開し、テストのために必要な刺激を提供し、チェックのために応答を収集するテスト ハーネスにフォームを置き換えることができます。

(現在は非常に軽量な) フォーム自体を基になるクラスに接続することには対処しませんが、少なくともテストされていない領域を最小限に抑えることができます。

私は本当に「大声で」考えているだけですが、それはまったくうまくいくと思いますか?

于 2009-01-27T13:11:09.977 に答える