WordCount by C# 結對編程
合作者:201631062210,201631062110
Gitee項目地址:https://gitee.com/zhouyue98/learngit
本次作業的鏈接地址:https://edu.cnblogs.com/campus/xnsy/2018softwaretest2398/homework/2187
一·代碼互審情況
1.C#編程避免使用大文件,如果一個文件裏的代碼超過300-400行,必須考慮將代碼分開到不同的類中,同伴寫的太長,所以將代碼分成了一個WC類。
2.有些變量命名格式錯誤,將其改正成了c#規範格式。
二·靜態代碼檢查情況
采用的靜態代碼檢查工具是StyleCop,StyleCop是一個分析C# 源代碼的程序,它執行一套統一風格和一致性規則,可以運行在Visual Studio或集成到MSBuild項目。
StyleCop也被集成到許多第三方開發工具中,應用範圍適中。 報出一個錯誤,和一些提示。
錯誤的原因是在單元測試中把原先控制臺輸出的部分暫時改成了函數返回,後面改回來之後,單元測試無法得到方法的返回值。改進方法,自己重新定義一個值。
三·單元測試情況
本次功能的拓展,增加了SuperCount方法(統計高級信息:空行數 代碼行數 註釋行數),ReadStopList方法(讀取停用詞表),Traverse方法(遍歷所有符合條件的文件),
我主要測試了SuperCount方法,使用VS2015生成的單元測試框架,為了方便測試,我對其中代碼輸出的部分進行了修改,將原先控制臺輸出的部分暫時改成了函數返回。該模塊的所有語句和分支都已覆蓋。
這是運行的單元測試,遇到問題
之前文件名因為缺少轉義字符“@”,而且應該給出完整路徑,所以出錯。修改之後
一些測試用例
寫入文件
測試的.c文件中的代碼使用的是本wc程序的代碼
四·性能測試和優化
本次性能測試用VS2015進行性能分析
測試結果
可以從圖中看出,Console.ReadLine()占據了99.8%時間,這主要與用戶的輸入時間有關,所以本軟件的性能可以算優秀,暫時不用優化。
五·收獲和感悟
此次結隊編程初體驗理解到了結隊編程很多好的方面,比如和兩位程序員各自獨立工作相比,結對編程能編寫出質量更高的代碼;可以更高效率的完成任務;
結隊編程還可以互相學習,以及發現很多自己身上的弊端。是一次不錯的體驗。
六·參考文獻鏈接
此次作業中,靜態代碼檢查參考doris_d的這篇博客:https://blog.csdn.net/doris_d/article/details/51323049,性能測試參考taxuezcy的這篇博客https://blog.csdn.net/taxuezcy/article/details/79315401;有關博客的使用和排版,參考範飛龍老師的這篇博客:http://www.cnblogs.com/math/p/se-tools-001.html;有關Git的使用,參考廖雪峰的官方網站https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/,在此表示感謝。此外,單元測試與性能測試與同伴一樣。
WordCount by C# 結對編程