1

我试图仪表添加到我的负载测试代码,以及在验证规则执行我的网络响应验证。我希望我能达到这两个要求使用Webtest.AddCommentToResult方法找到hereVisual Studio 2015负载测试 - Webtest.AddCommentToResult在哪里暴露?

但是我似乎无法寻找到这些意见,我添加得到暴露,无论是在负载测试结果时,我在分析中查看它们当它们运行并完成时,或者在事实之后在SQL控制器中。这些评论如何暴露,我可以访问它们吗?

我自定义的验证规则:

public class MyCustomValidationRule : ValidationRule 
{ 
    static int i = 1; 

    public override void Validate(object sender, ValidationEventArgs e) 
    { 
     e.WebTest.AddCommentToResult("Test comment number " + i++.ToString()); 
    } 
} 

回答

0

Web Performance Test Results Viewer具有运行 “.webtest” 的日志。期间(和之后)的执行的“.webtest”时,观看者的顶部面板显示请求,因为它们是(或已经)执行时,连同状态和定时等日志列包括在明确的任何意见“.webtest”,它包括来自AddCommentToResult的任何呼叫。

观众的底部面板上有“网络浏览器”,“请求”,“响应”,“环境”和“详细信息”选项卡。

请注意,由AddCommentToResult呼叫添加的注释都出现了要求前行写入观众的日志。

通常情况下,当网络测试运行的负载测试的一部分,只有失败的保存测试日志。丢弃成功测试的日志。这可以通过用于测试的运行设置的属性来改变。属性Maximum test logs(默认= 200)和Save log on test failure(默认为true)具有明显的含义。属性Save log frequency for completed tests(默认值= 0 =零)控制为成功测试保留多少个日志。如果测试中的所有测试用例都通过,则默认设置意味着不保存日志,因此AddCommentToResult调用写入的任何评论都不会被保留。如果原始问题打算询问“我们如何从每个执行的测试用例中保存一些数据?”那么我最好的答案是自己写一些数据到一个日志文件(可能使用的是StreamWriter)。

PostWebTest插件调用时,某些版本的Visual Studio未从AddCommentToResult中显示注释,以及“.webtest”作为负载测试的一部分运行的位置。见here

+0

因此正确答案是这样的功能被推迟和AddCommentToResult不会在负载测试的环境中工作黯然 – Pipeline

+0

@Pipeline不,你误解我写的。大多数情况下,AddCommentToResult工作正常。只有当一个PostWebTest插件试图在测试结束时写入。我没有时间在我有权访问的系统上检查问题的当前状态。 – AdrianHHH

+0

也许我是误会。 OP正在执行负载测试,根据我的理解,它与执行Web性能测试不同?他没有使用PostWebTest插件,而是使用了自定义编码的Web测试中假定的ValidationRule。 – Pipeline

相关问题