第四周小组作业

---恢复内容开始---

github地址:https://github.com/yo123abxd/wordcount2.git

psp2.1表格:

PSP2.1

PSP阶段

预估耗时

(分钟)

实际耗时

(分钟)

Planning

计划

 360 180

· Estimate

· 估计这个任务需要多少时间

 1440 2880

Development

开发

800 1440

· Analysis

· 需求分析 (包括学习新技术)

 180 360

· Design Spec

· 生成设计文档

 60 30

· Design Review

· 设计复审 (和同事审核设计文档)

 6030 

· Coding Standard

· 代码规范 (为目前的开发制定合适的规范)

120  150

· Design

· 具体设计

120  60

· Coding

· 具体编码

 720 720

· Code Review

· 代码复审

160  60

· Test

· 测试(自我测试,修改代码,提交修改)

 180 120

Reporting

报告

 120 80

· Test Report

· 测试报告

 60 80

· Size Measurement

· 计算工作量

60  30

· Postmortem & Process Improvement Plan

· 事后总结, 并提出过程改进计划

 6040 
 

合计

  

模块编写和测试

 

 

模块设计:

由于不区分大小写,所以把所有大写字母转换为小写字母,实现了swicther这个类。

因为要读取所以实现了input这个类。

识别单词后排序是count实现的。

到最后输出是由output实现的。

主要是通过sort函数来进行排序,主要的代码如下:

sort(sortedAns.begin(), sortedAns.end(), [] (const std::pair<std::string, int>& pa1, const std::pair<std::string, int>& pa2) {
return pa1.second > pa2.second || (pa1.second == pa2.second && pa1.first < pa2.first);
});

测试用例设计:

将一个文本的答案人工得到后不断将其本身字符粘贴在本身字符之后,然后得到大文件来测试效率

 

Test Case ID 测试用例编号Test Item 测试项(即功能模块或函数)Test Case Title 测试用例标题Test Criticality重要级别Input 输入Procedure 操作步骤Output 预期结果Result
实际结果
Status
是否通过
Remark备注
case1Count::counttest.cppHighaaa aaa ccc cc a s d a s _ - asd sa -asda -asd a-asdEXPECT_EQ(s, Count::count(vec));TRUETRUEYES大量数据测试
case2Count::counttest1.cppHigh123231aaa 12321321aaa 78798708ccc ****cc a s d a s _ - asd sa -asda -asd a-asdEXPECT_EQ(s, Count::count(vec));TRUETRUEYES等价类测试
case3Count::counttest2.cppHighaaa aaa12387310 ccc31270372180 108208c a s d a s _ - asd sa -asda123 -asd1 a-asdEXPECT_EQ(s, Count::count(vec));TRUETRUEYES等价类测试
case4Count::counttest3.cppHighaa123821973 aaa ccc cc a4567896567892130127 s d a s _ - asd sa -asda -asd a-asdEXPECT_EQ(s, Count::count(vec));TRUETRUEYES等价类测试
case5Count::counttest4.cppHighaaaEXPECT_EQ(s, Count::count(vec));TRUETRUEYES单个单词多字符测试
case6Count::counttest5.cppHighbEXPECT_EQ(s, Count::count(vec));TRUETRUEYES单个单词耽搁字符测试
case7Count::counttest6.cppHigh123 456 789EXPECT_EQ(s, Count::count(vec));TRUETRUEYES数字测试
case8Count::counttest7.cppHigh     123 456EXPECT_EQ(s, Count::count(vec));TRUETRUEYES前置空格数字测试
case9Count::counttest8.cppHigh   aEXPECT_EQ(s, Count::count(vec));TRUETRUEYES前置空格单词测试
case10Count::counttest9.cppHigh   a   aEXPECT_EQ(s, Count::count(vec));TRUETRUEYES前置空格多词测试
case11Count::counttest10.cppHighadhuao dauc asdhu cac ca ca c a cac c a c a c a ca  1231231dasds ***dasd*ds -ads9sada-asd-casd-231EXPECT_EQ(s, Count::count(vec));TRUETRUEYES等价类测试
case12Count::counttest11.cppHighadhuao dauc asdhu cac ca ca c a cac c a c a c a caEXPECT_EQ(s, Count::count(vec));TRUETRUEYES等价类测试
case13Count::counttest12.cppHighadhuao dauc asdhu cac ca ca c a cac c a c a c a caEXPECT_EQ(s, Count::count(vec));TRUETRUEYES等价类测试
case14Count::counttest13.cppHighasdcnas dasd 23123 as d as d asd ad d as d c as dEXPECT_EQ(s, Count::count(vec));TRUETRUEYES等价类测试
case15Count::counttest14.cppHighvbasdijas das s d asd ad d as d c as dEXPECT_EQ(s, Count::count(vec));TRUETRUEYES等价类测试
case16Count::counttest15.cppHigh     asd ad as d ad  as d c as dEXPECT_EQ(s, Count::count(vec));TRUETRUEYES前置空格多词测试
case17Count::counttest16.cppHigh   EXPECT_EQ(s, Count::count(vec));TRUETRUEYES空格测试
case18Count::counttest17.cppHighnullEXPECT_EQ(s, Count::count(vec));TRUETRUEYES空字符测试
case19Count::counttest18.cppHighaEXPECT_EQ(s, Count::count(vec));TRUETRUEYES等价类测试
case20Count::counttest19.cppHigha b cEXPECT_EQ(s, Count::count(vec));TRUETRUEYES等价类测试

Count类测试:

测试了空字符串与开始为空格与结束为空格,还有全为空格等特殊情况。

使用了googletest来对Count类进行单元测试。(为test.cpp-test19.cpp)

扩展任务:

代码规范说明:

代码规范参考了google c++风格指南

同组代码评审:

都运行通过了,没有遇到问题。

静态代码扫描:

使用了cpplint来进行静态代码扫描。

 

小组贡献分0.25

转载于:https://www.cnblogs.com/yo123abxd/p/8733154.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值