软件构造 实验心得
作者:互联网
软件构造
实验一与实验二心得
1、遵循流程,学会黑盒测试的习惯
在做实验二中,流程是先编写黑盒测试用例,再去实现两个Graph<L>
的实现类。但是我之前上课没太真正理解黑盒测试,没弄懂实验流程的意思,先去 implement
方法,之后才去编写的测试用例,在同学帮助和老师上课提及下才领悟。
那为什么一定要采取黑盒测试的原则呢?
最重要的就是不要让在你测试用例编写时受到自己
implement
方法时的影响,这样编写实验用例难免去落入“刻意”测试用例中特殊情况的“陷阱”,而不是面对编写好的函数规约去编写测试用例。
那为什么我们一定要面对规约编写测试?
因为规约是我们向客户(使用者)做出的承诺,客户通过规约进行使用,因此我们想要测试是否符合客户要求的,就需要面向规约去编写我们的测试用例
那如何去面对规约编写测试用例?
第一步 分析阅读规约,观察参数和规约中对不同情况的阐述,将参数(输入空间)划分为不同的等价类,并写入
Testing strategy
中。例如实验二:
// Testing strategy
// 测试接口 set(L source, L target, int weight) 方法:
// weight=0时, 图中已有该边,删除已有边,返回之前权值
// weight=0时, 图中没有该边,不添加该边,返回0
// weight>0时,图中已有该边,重新设置,返回之前权值
// weight>0时,图中没有该边,重新设置,返回0
// weight<0时,图中已有该边,重新设置为输入的负权值的绝对值,输出提示,返回之前权值
// weight<0时,图中没有该边,重新设置为输入的负权值的绝对值,输出提示,返回0
第二步
根据Testing strategy
划分出的具体空间去编写测试用例,观察规约的后置条件,测试不同输入空间下的返回值去是否符合规约后置条件中要求的值。
注意:
1 . 划分时注意参数在规约中描述的边界,针对多个边界加上测试
2 . 测试时不要专门去测试是否特定条件下抛出异常。
2、不要过分关注于单一方法的具体实现,而是去理解类与类之间的关系
在实验中,随着代码两次增加,实验的类会很多,类中的方法和类之间的关系也变得更为复杂,因此过于关注于单一方法的具体实现,很容易扎进去陷入其中,看半天也不理解(尤其是实验三),应该先去专门仔细查看整体框架上类之间的关系,去理解继承树的设计再在这样的条件下去仔细看方法的规约,通过规约去设计自己的实现。
3、 关于idea中如何引入eclipse项目
选择后选择合适的Java jdk版本即可
标签:weight,规约,构造,测试用例,实验,测试,编写,软件,心得 来源: https://www.cnblogs.com/yuesiyuan/p/16361712.html