2016-04-18 7 views
0

スクリプトを実行しているときにデータが原因でエラーが発生した場合、データテーブルをExcelにエクスポートできるかどうかを知りたい。データによってエラーが発生した場合、ランタイムデータテーブルをExcelにエクスポートするにはどうすればよいですか?

シートに5つのレコードがあり、2つのレコードが正常に処理された場合、3番目のレコードを実行しているときにスクリプトでエラーが発生しました。私はその瞬間にExcelに輸出することができますか?

データが原因でどこでもエラーが発生する可能性があります。

+0

あなたが尋ねていることは全くわかりません。 "あなたがXを意味するならば、A、もしあなたがY、そしてB"を意味するならば、問題があると思われる理由を示すスクリプトのように、より多くの情報を投稿してください。 。 (どのような質問:どのようにエクスポートする?どのようにエラーを検出するか?どのような種類のエラー?正確な操作の間に何が原因で発生したのか何のシート何のデータ何のエラー短いのか? – TheBlastOne

答えて

1

あなたの質問ではQTPは明示的ではありませんが、HP-UFTというタグを使用しているためQTPを想定しています。

「エラーが発生したとき」とは何を意味するのかよくわからないので、2つの可能性を検討します。

1)テストしているアプリケーションでエラーが発生しました。 QTP自体は依然としてスクリプトを実行しています。

このような状況では、スクリプトで検証チェックが行われる必要があります(実際に起こったことが確実に起きるかどうかを確認するステートメントがある場合はif)、これらのチェックが失敗した場合はすぐにDataTable.Export QTPが終了する前にディスクにデータを保存します。その後、スクリプトを続行するか、ExitTestを追加して失敗してテストを停止することができます。あなたはQTP自体にエラーを取得している

2):

は、あなたの質問に基づいて、私はそれが可能性が高いと思います。 QTPがクラッシュすると、DataTableの動的な変更がすべて破棄されます(つまり、DataTable.Import(ファイル名)を実行した場合やフィールドを更新した場合は、デザインタイムのDataTableに戻ります)

状況によっては、あなたのスクリプトがQTP自身がスクリプトを停止させている何かに遭遇しています。おそらく、オブジェクトが見つからないエラー、または何らかの構文エラーが発生している可能性があります。あなたは

function FailTestBecause (reason) 
    Print "Test Failed Because: " & reason 
    Reporter.ReportEvent micFail, Environment("ActionName"), reason 
    DataTable.Export(filename) 
    ExitTest 
end Function 

... ...おそらく追加、たとえば...あなたのコードでは、この種のエラーが発生するという点に到達する前に、物事をチェックするために

If not Browser("ie").Page("page").WebTable("table").Exists then 
    FailTestBecause "Can't find table" 
End If 

を守備の文を追加することを検討すべきです

または、On Error Resume Nextを使用し、DataTable.Export(filename)のコマンドを失敗した直後に置くことができます。

関連する問題