我已经建立了一个网络测试。
在其中我添加了写入文件。
我用 5 个虚拟用户创建了 loadtest,它们只运行上面的 webtest。
在Graph view
我看到有 5 Users load
。
最后我看到只有一行写入文件。
我需要以某种特殊方式定义分布吗?
我认为设置虚拟用户的数量就足够了。不?
顺便说一句,什么会导致我的负载测试在每次运行时恰好运行 10 分钟?
我不记得限制为 10 分钟
这是我的测试代码:
public class Settings_CacheExplosion : WebTest { //私有静态只读 ILog activityLog = LogManager.GetLogger("Activity");
private static int _ctidsCounter { get; set; }
public static int CtidsCounter
{
get
{
if (_ctidsCounter == 2000)
{
_ctidsCounter = 1000;
}
return _ctidsCounter++;
}
set
{
_ctidsCounter = value;
}
}
public Settings_CacheExplosion()
{
this.PreAuthenticate = true;
CtidsCounter = 1000;
//log4net.Config.XmlConfigurator.Configure();
}
public override IEnumerator<WebTestRequest> GetRequestEnumerator()
{
WebTestRequest request1 = new WebTestRequest("http://clientservice.mam.qasite-services.com/settings");
request1.Method = "POST";
Debug.WriteLine(string.Format("ctid={0}", CtidsCounter));
request1.QueryStringParameters.Add("ctid", CtidsCounter.ToString(), false, false);
StringHttpBody request1Body = new StringHttpBody();
request1Body.ContentType = "";
request1Body.InsertByteOrderMark = false;
request1Body.BodyString = "";
request1.Body = request1Body;
string path = @"Settings_CacheExplosion_log.txt";
// This text is added only once to the file.
if (!File.Exists(path))
{
// Create a file to write to.
using (StreamWriter sw = File.CreateText(path))
{
sw.WriteLine(string.Format("ctid={0}", CtidsCounter));
}
}
// This text is always added, making the file longer over time
// if it is not deleted.
using (StreamWriter sw = File.AppendText(path))
{
sw.WriteLine(string.Format("ctid={0}", CtidsCounter));
}
yield return request1;
request1 = null;
}
}