日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

使用VS2005进行代码覆盖率分析

發布時間:2023/11/27 生活经验 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用VS2005进行代码覆盖率分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

下面通過一個簡單的例子來講解VS2005是如何做代碼分析的(此處所做的代碼分析是在單元測試之后進行的,其分析代碼仍然使用上節的做和代碼)

1、上節的原始代碼和單元測試代碼分別如下:

//原始代碼

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

namespace WindowsApplication1

{

?? public partial class Form1 : Form

??? {

??????? public Form1()

??????? {

??????????? InitializeComponent();

??????? }

?????? ?public int?Add(int a,int b)??? //構建ADD方法

??????? {

??????????? return?a +b ;

??????? }

??????? private void button1_Click(object sender, EventArgs e)

??????? {

??????????? int temp = 0;

??????????? temp=Add(Convert.ToInt32(textBox1.Text), Convert.ToInt32(textBox2.Text));//調用ADD方法

??????????? textBox3.Text = temp.ToString();

??????? }

??????? private void label2_Click(object sender, EventArgs e)

??????? {

??????? }

??????? private void label3_Click(object sender, EventArgs e)

??????? {

??????? }

??? }

//單元測試代碼

///<summary>

??????? ///Add (int, int) 的測試

??????? ///</summary>

??????? [TestMethod()]

??????? public void AddTest()

??????? {

??????????? Form1 target = new Form1();

??????????? int a = 30; // TODO: 初始化為適當的值

??????????? int b = 15; // TODO: 初始化為適當的值

??????????? int expected = 45; //預期結果應該為:30+15=45

??????????? int actual;

??????????? actual = target.Add(a, b);

??????????? Assert.AreEqual(expected, actual);//預期結果與真實結果進行對比,如果相同則測試通過,否則失敗

?????????? // Assert.Inconclusive("驗證此測試方法的正確性。");注釋該行

??????? }

}

2、代碼覆蓋率分析

當創建了單元測試之后,在“解決方案資源管理器”下將會自動添加如下兩個文件(localtestrun.testrunconfig和解決方案名稱.vsmdi),打開“localtestrun.testrunconfig”文件,

1)配置要檢測的項目,如下圖:


2
)配置運行


3
)運行單元測試,在測試結果中鼠標單擊右鍵,選擇“代碼覆蓋率結果”,此時將會看到欲測試代碼的覆蓋率:



在代碼覆蓋率分析結果中,可以看到
AddTest的覆蓋率為:10000%,而其中get_TestContext覆蓋率為000%,那是因為text3文本框是用來輸出數據的,而不是用來接收數據的。

3、結論

通過使用VS2005的代碼覆蓋率結果分析可以很容易的對程序員自己寫的代碼進行覆蓋率的分析,但是如果想要準確知道自己的代碼覆蓋率是多少,則必須詳細的設計測試用例,如:a、語句覆蓋測試用例,b、分支覆蓋測試用例,c、條件覆蓋測試用例,d、分支-條件覆蓋測試用例,e、條件組合覆蓋測試用例,f、路徑覆蓋測試用例。

原文地址:http://www.cnblogs.com/SmileMan/archive/2007/11/05/949418.html

轉載于:https://www.cnblogs.com/jacklaw/archive/2007/12/04/982357.html

總結

以上是生活随笔為你收集整理的使用VS2005进行代码覆盖率分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。