zoukankan      html  css  js  c++  java
  • HttpTest4Net

    HttpTest4Net

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

    功能

    提供测试总时间或请求总次数的测试方式.

    支持多用户压力测试和思考时间.

    支持GET和POST基础测试功能.

    提供测试用例保存和加载功能.

    提供自定义编写测试用例加载到工具中.

    提供测试汇总功能,可以实时查看测试的情况和完成后结果的分布.

    定义测试用例

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

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    [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;
            }
        }
    }

    工具使用图解

    下载工具

  • 相关阅读:
    sql count中加条件
    zero-copy总结
    问题诊断神器arthas
    rabbitmq 消息确认
    HttpRunner安装笔记(1)安装环境准备:pyenv安装
    centos7 安装rabbitmq3.4.1-1
    centos7 python2.7.5 升级python3.6.4
    测试面试必会sql(1)
    mysql5.6 无法远程连接问题解决
    Katalon 学习笔记(一)
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/3642179.html
Copyright © 2011-2022 走看看