第二次作业 郭昭杰 201731062608
Git地址:https://github.com/guozhaojie
Git用户名:guozhaojie
学号后五位:62608
博客地址:https://www.cnblogs.com/ashes-g/
作业链接:https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2/homework/2795
一、环境配置过程
1.visual studio 2017已经提前配置完成
2.克隆项目
按照作业示范进行操作,没有出现问题。
3.在Git中复制项目地址
按照作业示范进行操作,没有出现问题。
4.在VS中打开该项目
这里选择控制台应用时选成了第一个(.NET Core),导致后面进行单元测试时使用.NET Framework的测试出现错误。
5.用Git记录改动
按照作业示范进行操作,没有出现问题。
二、代码设计
1.设计思路:首先生成2和3中的随机整数,代表生成的算式中有几个运算符。根据运算符的数量随机生成3-4个0到100的随机整数和2-3个1到4的随机整数,分别代表算式出现的数字和运算符(1234对应加减乘除)。随机整数生成后放入检验函数(check)中进行检验是否会出现结果为分数或除数为0的异常情况,若出现异常则返回0使生成算式的函数重新生成(do while型循环),未出现异常则返回1,使随机生成的整数进入结果函数(result)中根据输入的参数计算算式的值(使用switch1234判断运算符逐步计算,若加减后出现乘除则需要打括号)并将其打印出来。主函数根据用户输入的值执行若干次生成算式的函数,最终生成用户期望数量的算式。
2.源代码截图:
3.运行截图:
三、测试过程
1.单元测试
这里由于C#与示例中的C++不同,而且一开始选错了控制台程序的类型导致单元测试一直报错,最后发现了问题并修正后测试通过。
2.设置断点并调试
选择了在switch处设置断点观察程序的计算,未发现错误。
3.回归测试
重新进行了一次单元测试,通过。
四、性能分析
设置生成题目数为10000使程序运行了1分钟,所得分析报告如下。
五、上传代码
具体上传步骤示例中没有写的太清楚,自己摸索了很久还是无法上传。后来经过询问同学、参考其他人上传的过程后懂了怎样上传,但第一次上传后发现上传了好几个单元测试文件(之前单元测试出了问题连续开了几个),于是把单元测试文件删掉后又上传了一次,结果这次上传后什么都没有了,不太懂这是为什么。最后提交时只有第一次上传有代码,第二次上传里一片空白。
六、小结
这次作业主要学习了Git的使用和代码的测试,但由于Git是纯英文的所以目前还没弄太明白,争取在以后尽快能够掌握。另外,因为很久没有编写代码,这次写这个用的时间比较长,而且设计的思路和算法也不算太好,希望在以后能够努力提高编写代码的水平,能快速地写出高质量的代码。