51Testing软件测试论坛
标题: Http压力测试工具HttpTest4Net [打印本页]
作者: 天天酷派哦 时间: 2019-1-28 16:33
标题: Http压力测试工具HttpTest4Net
本帖最后由 天天酷派哦 于 2019-1-28 16:37 编辑
HttpTest4Net是一款基于C#实现的和HTTP压力测试工具,通过工具可以简单地对HTTP服务进行一个压力测试.虽然VS.NET也集成了压力测试项目,但由于VS自身占用的资源导致了在配置不高的PC上难以做到高并发压力测试,再加上需要装VS这个样一个庞大的工具也是件很麻烦的事情.使用HttpTest4Net这个小工具只需要简单地配置一下参数就可以进行现有的HTTP服务进行压力测试并得到一个详细的测试结果汇总.
功能- 提供测试总时间或请求总次数的测试方式.
- 支持多用户压力测试和转考时间.
- 支持GET和POST基础测试功能.
- 提供测试用例保存和加载功能.
- 提供自定义编写测试用例加载到工具中.
- 提供测试汇总功能,可以实时查看测试的情况和完成后结果的分布.
定义测试用例工具只提供基础的GET和POST测试用例,但在一些场景中这两种测试可能满足不了需要;所以工作提供自定义测试用例的功能,开发人员可能通过实现HttpTest4Net.Interfaces.IUrlTester接口实现功能相对比较复杂的测试用例;编写好的测试用例只需要编译成DLL后放到测试工具运行的目录下即可完成.以下是组件提供的POST测试用例实现代码:
- [Test("post base")]
- public class PostUrlTester:IUrlTester
- {
- public PostUrlTester()
- {
- Encoding = "UTF-8";
-
- }
- public string Url
- {
- get;
- set;
- }
- public string PostData
- {
- get;
- set;
- }
- public string Encoding
- {
- get;
- set;
- }
-
- public System.Net.HttpWebRequest CreateRequest()
- {
- HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
- request.Method = "POST";
- request.ContentType = "application/x-www-form-urlencoded; charset="+Encoding;
- byte[] data = System.Text.Encoding.GetEncoding(Encoding).GetBytes(PostData);
- request.ContentLength = data.Length;
- Stream myStream = request.GetRequestStream();
- myStream.Write(data, 0, data.Length);
- myStream.Close();
- return request;
- }
- public TestType Type
- {
- get
- {
- return TestType.POST;
- }
- }
- }
复制代码
工具使用图解
[attach]121416[/attach]
[attach]121417[/attach]
作者: hebyhe 时间: 2021-1-19 20:45
很好!
作者: hebyhe 时间: 2021-1-19 20:46
很好的一次分享,非常感谢!
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) |
Powered by Discuz! X3.2 |