• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    蛙蛙推薦:創建自己的性能計數器及壓力測試入門

    發布: 2008-9-25 10:13 | 作者: 不詳 | 來源: 測試時代 采編 | 查看: 237次 | 進入軟件測試論壇討論

    領測軟件測試網


    從以上可以看到,接口實現里要做點兒啥,MathServicePerfCounter怎么用,你要想創建自己的計數器,比貓畫虎就OK了,咱們開始創建一個Web服務,添加倆web方法
    復制  保存
    [WebMethod]
    public int Addition(int a, int b)
    {
        MathServicePerfCounter.Instance.RateOfAddition.Increment();
        Random r = new Random();
        Thread.Sleep(r.Next(500, 2000));
        return a + b;
    }
    
    [WebMethod]
    public int Multiplication(int a, int b)
    {
        MathServicePerfCounter.Instance.RateOfMultiplication.Increment();
        Random r = new Random();
        Thread.Sleep(r.Next(500, 2000));
        return a * b;
    }

    為了模擬真實環境,每個方法隨機休眠幾秒,然后右鍵點那個服務,在瀏覽器測試一下那個服務,看看能瀏覽不?然后在開始運行里輸入perfmon,添加計數器里看看有沒有咱們的MathServicePerfCounter計數器,反正我這里有。
    單擊顯示全圖,Ctrl+滾輪縮放圖片

    對了,global.asax里加上如下代碼,為了監控每秒請求和總請求量及并發請求量
    復制  保存
    void Application_BeginRequest(object sender, EventArgs e)
    {
        MathServicePerfCounter.Instance.CountOfCurrentRequest.Increment();
        MathServicePerfCounter.Instance.RateOfRequest.Increment();
        MathServicePerfCounter.Instance.TotalOfRequest.Increment();
    }
    
    void Application_EndRequest(object sender, EventArgs e)
    {
        MathServicePerfCounter.Instance.CountOfCurrentRequest.Decrement();
    }

    服務有了,咱得有單元測試呀,在這個Web服務上點右鍵,創建一個單元測試,vs會自動給你創建一個測試項目,項目的名字你可以自己指定,然后會自動給你添加一個Web引用,然后自動生成一個叫MathService.asmxTest.cs的測試類,里面給你生成兩個測試方法,修改一下初始值及期望值,去除Assert.Inconclusive語句,最后如下。
    單擊顯示全圖,Ctrl+滾輪縮放圖片
    復制  保存
    /// <summary>
    ///Addition (int, int) 的測試
    ///</summary>
    [TestMethod()]
    public void AdditionTest()
    {
        MathService target = new MathService(); // TODO: 使用 [AspNetDevelopmentServer] 和 TryUrlRedirection() 自動啟動并綁定 Web 服務。
        int a = 5; // TODO: 初始化為適當的值
        int b = 6; // TODO: 初始化為適當的值
        int expected = 11;
        int actual;
    
        actual = target.Addition(a, b);
        Assert.AreEqual(expected, actual, 
            "MathServiceTest.localhost.MathService.Addition 未返回所需的值。");
    }
    
    /// <summary>
    ///Multiplication (int, int) 的測試
    ///</summary>
    [TestMethod()]
    public void MultiplicationTest()
    {
        MathService target = new MathService(); // TODO: 使用 [AspNetDevelopmentServer] 和 TryUrlRedirection() 自動啟動并綁定 Web 服務。
        int a = 5; // TODO: 初始化為適當的值
        int b = 6; // TODO: 初始化為適當的值
        int expected = 30;
        int actual;
    
        actual = target.Multiplication(a, b);
        Assert.AreEqual(expected, actual, 
            "MathServiceTest.localhost.MathService.Multiplication 未返回所需的值。");
    }

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    42/4<1234>

    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>