HTTP壓力測試工具

HttpTest4Net是一款基於C#實現的和HTTP壓力測試工具,經過工具能夠簡單地對HTTP服務進行一個壓力測試.雖然VS.NET也集成了壓力測試項目,但因爲VS自身佔用的資源致使了在配置不高的PC上難以作到高併發壓力測試,再加上須要裝VS這個樣一個龐大的工具也是件很麻煩的事情.使用HttpTest4Net這個小工具只須要簡單地配置一下參數就能夠進行現有的HTTP服務進行壓力測試並獲得一個詳細的測試結果彙總.併發

功能

提供測試總時間或請求總次數的測試方式.app

支持多用戶壓力測試和轉考時間.高併發

支持GET和POST基礎測試功能.工具

提供測試用例保存和加載功能.post

提供自定義編寫測試用例加載到工具中.測試

提供測試彙總功能,能夠實時查看測試的狀況和完成後結果的分佈.url

定義測試用例

工具只提供基礎的GET和POST測試用例,但在一些場景中這兩種測試可能知足不了須要;因此工做提供自定義測試用例的功能,開發人員可能經過實現HttpTest4Net.Interfaces.IUrlTester接口實現功能相對比較複雜的測試用例;編寫好的測試用例只須要編譯成DLL後放到測試工具運行的目錄下便可完成.如下是組件提供的POST測試用例實現代碼:code

[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;
        }
    }
}

 

工具使用圖解

orm

 http://files.cnblogs.com/files/jjg0519/HttpTest4Net.rarblog

相關文章
相關標籤/搜索