单元测试与优化

211606356 陈宇 211606333 温志铭

1.单元测试

1.为了使以后代码出错方便找出错误,要对每个方法的方方面面进行单元测试,以保证他的准确性
2.使用Junit插件对对代码进行单元测试
3.对每个传入的参数进行测试,测试每种可能的情况,并让预期值等于实际值
4.单元测试代码

@Test
void testParseSuffixExpression() {
// 测试中序转后续
List < String > test=new ArrayList < String > ();
test.add("1");
test.add("+");
test.add("2");
test.add("-");
test.add("3");
test.add("×");
test.add("4");
test.add("÷");
test.add("5");
List < String > answer=new ArrayList < String > ();
answer.add("1");
answer.add("2");
answer.add("+");
answer.add("3");
answer.add("4");
answer.add("×");
answer.add("5");
answer.add("÷");
answer.add("-");
assertEquals(answer, MathExam6356.parseSuffixExpression(test));
}// 模拟生成一个1+2—3×4÷5的中序表达式,经过ParseSuffixExpression()方法生成12+34×5÷-的后序表达式

模拟生成一个1+2—3×4÷5的中序表达式,经过ParseSuffixExpression()方法生成12+34×5÷-的后序表达式
5.测试覆盖率截图

2.结构优化(重构)

1.重构了init().方法,原先的init()方法太过复杂,重构后只对gread 和 n 进行初始化。
2.让gradeone();greadtwo();方法支持逆波兰,未重构前答案直接计算,重构后使用answer()方法计算答案,方便单元测试减少不必要的数组。
3.UML类图



4.运行流程图

3.性能调优

1优化前截图

2.优化瓶颈
对于simpleDateFormat,由于智商有限无法优化,只能优化字符串匹配
3.优化后截图

4.总结

这次作业中,我认识到自学一种新知识的困难之处,需要不段的查资料,理解,熟悉并应用
最后建议晚上通宵不要太大声影响别人

posted @ 2018-09-30 10:22  帅气天然呆  阅读(352)  评论(0编辑  收藏  举报