我正在寻找一种方法来关闭WebTest响应流(JSON对象),而不必使用超时属性,因为它使测试失败并且不总是有效,这样做的原因是流无限地滴答,除非它由客户端关闭,现在我的测试只是超时,因为我还没有找到一种方法从代码中关闭它们。
JSON对象不需要有效,但可以在此处找到对象的示例以及流式传输时的样子:http://tradestation.github.io/webapi-docs/en/stream/
我的负载测试解析了一个IISLog,然后它发送了它找到的Web API请求作为WebTestRequests,其中一些请求被无休止地流式传输的JSON对象回答,我需要根据请求的时间关闭这些流。在IISlog中完成。
public class WebTest1Coded : WebTest
{
public WebTest1Coded()
{
this.PreAuthenticate = true;
}
public override IEnumerator<WebTestRequest> GetRequestEnumerator()
{
//Substitute the highlighted path with the path of the iis log file
IISLogReader reader = new IISLogReader(@"C:\IisLogsToWebPerfTest\TestData\log.log");
foreach (WebTestRequest request in reader.GetRequests())
{
if (this.LastResponse != null) {
this.LastResponse.HtmlDocument.ToString();
}
yield return request;
}
}
}
谢谢!