Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2008 在回放UI窗口中显示webtest插件的时间_Visual Studio 2008_Webtest - Fatal编程技术网

Visual studio 2008 在回放UI窗口中显示webtest插件的时间

Visual studio 2008 在回放UI窗口中显示webtest插件的时间,visual-studio-2008,webtest,Visual Studio 2008,Webtest,我已经编写了一个VisualStudio2008WebTest插件,需要在回放ui窗口中显示运行所需的时间 我试过: e.WebTest.BeginTransaction("B2BValidate"); // then call my plugin e.WebTest.EndTransaction("B2BValidate"); 这确实会将B2BValidate事务添加到播放窗口,但总时间列显示为0.000秒。我错过了什么 -MattVisual Studio中的事务希望包含一个请求-如果

我已经编写了一个VisualStudio2008WebTest插件,需要在回放ui窗口中显示运行所需的时间

我试过:

e.WebTest.BeginTransaction("B2BValidate");

// then call my plugin

e.WebTest.EndTransaction("B2BValidate");
这确实会将B2BValidate事务添加到播放窗口,但总时间列显示为0.000秒。我错过了什么


-Matt

Visual Studio中的事务希望包含一个请求-如果没有请求,它们就不能直接在代码中内联工作

您必须使用类似于启动和停止计时器的方法,然后使用WebTest的AddCommentResult方法在WebTest结果查看器中显示经过的时间

另一个选项是将webtest置于loadtest中,然后参考性能计数器:

%LoadTestPlugin中的时间 %规则中的时间 %WebTest代码中的时间
当然,这只是给出比例,而不是精确的计时数据。

有一个TransactionTimer类需要实例化,并定义计时器的请求范围

       public class DynamicTransactionTimer : WebTestRequestPlugin
 {
 public override void PreRequest(object sender, PreRequestEventArgs e)
 {
     TransactionTimer t = new TransactionTimer();
     t.Name = "trx3";
     t.Items.Add(e.Request);
     e.WebTest.BeginTransaction("trx3"); 
 }

     public override void PostRequest(object sender, PostRequestEventArgs e)
     {
         e.WebTest.EndTransaction("trx3");
     }
    }

这不管用。如果您尝试它,您将看到在独立web测试或负载测试中,“trx3”报告0.00秒的响应时间和经过的时间。您不能在WebTestRequestPlugin PostRequest事件中结束事务,或者排除最后一个请求的时间。此外,在BeginTransaction/EndTransaction调用中实际上根本没有使用对象“t”。webtest引擎创建了一个全新的TransactionTimer对象。TransactionTimer类似乎不打算直接使用。