作业要求20200924-3 单元测试,结对
作业要求参见:https://edu.cnblogs.com/campus/nenu/2020Fall/homework/11243
结对伙伴:张文燕
使用语言:Python
集成环境:Pycharm
测试框架:UnitTest
测试内容:本周作业 四则运算试题生成
要求1 对每个功能,先给出测试用例,然后再编码功能。请注意把测试用例视为功能需求完成的检验指标。 (40分)
功能一:
序号 | 测试用例 | 预期结果 |
1 | 在命令行输入f4并回车。 | 输出第一道四则运算题,换行输出“?”,用户可在“?”后输入答案。 |
2 | 输入正确答案并回车。 | 提示“答对啦,你真是个天才!”,并换行输出下一道随机产生的四则运算题,换行输出“ ?”。 |
3 | 输入错误答案并回车。 | 提示“再想想吧,答案似乎是xxx(正确答案)喔!”,并输出下一道随机四则运算题,换行输出“ ?”。 |
4 | 回答完20道题并回车。 | 提示“你一共答对xxx(回答正确数)道题,共20道题。”,并结束程序。 |
功能二:
序号 | 测试用例 | 预期结果 |
1 | 在命令行输入f4并回车。 | 随机生成一个带括号的四则运算题,换行输出“?”,用户可在“?”后输入答案。 |
2 | 输入正确答案并回车。 | 提示“答对啦,你真是个天才!”,并换行输出下一道随机产生的带括号四则运算题,换行输出“?”。 |
3 | 输入错误答案并回车。 | 提示“再想想吧,答案似乎是xxx(正确答案)喔!”,并输出下一道带有括号的四则运算题,换行输出“ |
4 | 回答完20道题并回车。 | 提示“你一共答对xxx(回答正确题数)道题,共20道题。”,并结束程序。 |
功能三:
序号 |
测试用例 | 预期结果 |
1 | 在命令行输入f4 -c -3 | 提示“题目数量必须是 正整数。” |
2 | 在命令行输入f4 -c 3.5 | 提示“题目数量必须是 正整数。” |
3 | 在命令行输入f4 -c test | 提示“题目数量必须是 正整数。” |
4 | 在命令行输入f4 -c 10 | 生成.txt文件,文本中有十道不重复的题目及其答案。 |
TDD(UnitTest)测试用例:
序号 | 测试用例 | 预期结果 |
1 | 执行生成表达式函数:judeExpression() |
提示“create success 生成的表达式为:(2/10+4)*6” |
2 | 输入一个带括号的表达式:(1+8)*3+0,输入此表达式的正确答案:27 |
提示“answer same |
要求2 在博客报告测试用例全部fail 到 全部pass 的过程,报告事实 (fail到修改代码或者测试用例,到pass) 以及收获。 除了最初的框架,测试用例中存在一次性pass没有经过fail的,也报告一次性通过,给出如此优秀地实现了这部分功能的代码。由2位同学中的一位发布博客提交到作业,指明自己的结对伙伴;另一位在作业中引用这一博客,指明自己的结对伙伴。(40分)
此次作业为结伴完成,链接至https://www.cnblogs.com/zhangwenyan/p/13765492.html
收获:此次作业是我第一次进行单元测试,所以整个过程不是很熟练。但是在结对测试的过程中发现了很多bug,我们一起讨论,去处理作业中的漏洞,最终我们逐一解决了,虽然过程不是一帆风顺的,但却收获很大!
代码地址:https://e.coding.net/jianghui2/arithmetic0/Arithmetic0.git