2017-10-22 6 views
0

私はC#とJavaScriptで実装されたWebサイトでVisual Studio 2013を使ってWebTestを作成しています。ここに私が従っているステップと、私が取り組んでいる問題があります。
:私はウェブサイト
ステップのソースコードへのアクセスを持っていない:C#とJavascriptで書かれたWebサイトにVisual Studio 2013を使ってWebTestを書く

  1. 録音PDFファイルをアップロードする必要がありWebTestの、。
  2. アップロードするファイルを選択すると、JavaScriptが実行され、アップロードするファイルを識別する一意の動的GUIDが生成されます。同じファイルを再度アップロードすると、新しいGUIDが生成されます。
  3. 一意のGUIDは、サーバーに送信するHTTP要求の一部として使用されます。
  4. 失敗

    試験を行うWebTestの、同じ(記録)GUIDが使用されるが、再生

私の質問は: WebTestのを再生する際にはJavaScriptが実行されないので、WebTestのを再生する際にGUIDを生成する方法はありますか?そうでない場合、回避策はありますか? この問題を解決するためのヒントはありがたいです。

+0

ありがとうございます。それはうまくいきましたが、記録された値がアップロードされたファイルをユーザーのプロフィールにリンクするためにアプリケーション内でも使用されることを知りました。アプリケーションがその値をキャプチャするために変更する必要があるように聞こえます。たとえば、隠しフィールドやその他の手段があります。したがって、新しいGUIDを作成すると、プラグインを使用して作成するGUIDとアプリケーションのGUIDが異なるため、テストは失敗します。思考? – OceanBlue

+0

あなたが私の答えに応答しているなら、私の答えにコメントを追加するのが最善だったでしょう。あなたの質問を編集して問題をより詳しく説明してください。問題の項目(2)はまだ適用されますか? JavascriptコードはGUIDを生成しますか?私は元の質問に答えましたが、あなたのコメントはより複雑な問題を示唆しています。 – AdrianHHH

+0

この質問に対するあなたの最後の活動から2週間以上が経過しています。問題は解決しましたか?はいの場合は、答えを記入してください。そうでない場合は、他の人が回答を与えることができるように、詳細を追加するために質問を[編集]してください。 – AdrianHHH

答えて

0

WebTestRequestpluginを作成します。そのPreRequestDataBindingメソッドでGUIDを作成し、コンテキストパラメータに保存します。記録された要求にプラグインを追加し、contextパラメータでGUID値を使用するように要求を変更します。以下の(未テスト)コードは動作するはずに基​​づいて

何か:

public class CreateGuid : WebTestRequestPlugin 
{ 
    public string GuidCp { get; set; } 

    public override void PreRequestDataBinding(object sender, PreRequestDataBindingEventArgs e) 
    { 
     Guid newGuid = Guid.NewGuid(); 
     e.WebTest.Context[GuidCp] = newGuid.ToString(); 
    } 
} 

あなたはa parameter toToStringを経由して、特定のGuidの書式を設定する必要があるかもしれません。

関連する問題