Http压力测试工具HttpTest4Net_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > Http压力测试工具HttpTest4Net

Http压力测试工具HttpTest4Net

 2014/4/1 18:20:44  技术狂  博客园  我要评论(0)
  • 摘要:HttpTest4Net是一款基于C#实现的和HTTP压力测试工具,通过工具可以简单地对HTTP服务进行一个压力测试.虽然VS.NET也集成了压力测试项目,但由于VS自身占用的资源导致了在配置不高的PC上难以做到高并发压力测试,再加上需要装VS这个样一个庞大的工具也是件很麻烦的事情.使用HttpTest4Net这个小工具只需要简单地配置一下参数就可以进行现有的HTTP服务进行压力测试并得到一个详细的测试结果汇总.功能提供测试总时间或请求总次数的测试方式.支持多用户压力测试和转考时间
  • 标签:net 工具 测试 测试工具 HTTP

HttpTest4Net是一款基于C#实现的和HTTP压力测试工具,通过工具可以简单地对HTTP服务进行一个压力测试.虽然VS.NET也集成了压力测试项目,但由于VS自身占用的资源导致了在配置不高的PC上难以做到高并发压力测试,再加上需要装VS这个样一个庞大的工具也是件很麻烦的事情.使用HttpTest4Net这个小工具只需要简单地配置一下参数就可以进行现有的HTTP服务进行压力测试并得到一个详细的测试结果汇总.

功能

 

  • 提供测试总时间或请求总次数的测试方式.
  • 支持多用户压力测试和转考时间.
  • 支持GET和POST基础测试功能.
  • 提供测试用例保存和加载功能.
  • 提供自定义编写测试用例加载到工具中.
  • 提供测试汇总功能,可以实时查看测试的情况和完成后结果的分布.

 

定义测试用例

工具只提供基础的GET和POST测试用例,但在一些场景中这两种测试可能满足不了需要;所以工作提供自定义测试用例的功能,开发人员可能通过实现HttpTest4Net.Interfaces.IUrlTester接口实现功能相对比较复杂的测试用例;编写好的测试用例只需要编译成DLL后放到测试工具运行的目录下即可完成.以下是组件提供的POST测试用例实现代码:

01 class="plain">[Test("post base")] 02     public class PostUrlTester:IUrlTester 03     { 04         public PostUrlTester() 05         { 06             Encoding = "UTF-8"; 07             08         } 09         public string Url 10         { 11             get; 12             set; 13         } 14   15         public string PostData 16         { 17             get; 18             set; 19         } 20   21         public string Encoding 22         { 23             get; 24             set; 25         } 26           27         public System.Net.HttpWebRequest CreateRequest() 28         { 29             HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url); 30             request.Method = "POST"; 31             request.ContentType = "application/x-www-form-urlencoded; charset="+Encoding; 32             byte[] data = System.Text.Encoding.GetEncoding(Encoding).GetBytes(PostData); 33             request.ContentLength = data.Length; 34             Stream myStream = request.GetRequestStream(); 35             myStream.Write(data, 0, data.Length); 36             myStream.Close(); 37             return request; 38         } 39   40         public TestType Type 41         { 42             get 43             { 44                 return TestType.POST; 45             } 46         } 47     }

工具使用图解

下载(运行环境.NetFramework 4.0)

发表评论
用户名: 匿名