黑马程序员技术交流社区

标题: 【成都校区】junit及反射 [打印本页]

作者: 1275753885    时间: 2018-12-7 00:28
标题: 【成都校区】junit及反射
一、junit单元测试(主要用于替换main方法,以后都写测试,不写main方法了,它的底层就是main方法)
软件行业测试大体分为两类:黑盒测试、白盒测试
黑盒测试:相当于你拿一块布把代码蒙上了,你只需要给这个代码输入一些参数,看看能不能出现预期结果,没输出有问题,输出没问题,你不用关注具体的实现逻辑。
白盒测试:与黑盒的主要区别是你要关注盒子里面代码主要的运行逻辑流程,每一行的逻辑是什么,里面的算法是否严谨,输出是否达到期望,白盒希望我们写代码,黑盒不需要我们写代码,现在市面上的很多开发人员都是黑盒测试
区别:黑盒:不需要写代码,给输入值,看程序是否能够输出期望的值。白盒:需要写代码,关注程序具体的执行流程。
我们今天学的junit单元测试就是白盒测试中的一种
junit使用:白盒测试(步骤)
1.定义一个测试类(测试用例)
建议测试类名:被测试的类名Test,包名xxx.xxx.xx.test如cn.itcsat.test
2.定义一个测试方法,(可以独立运行):建议方法名为:test被测试的方法名,如testAdd(),建议返回值:void(因为这个方法独立运行后看结果就行了,有没人调用你)
参数列表(建议一个空参)
3.给方法加@Test注解(加上这个注解,方法就能独立运行了,正常也是应该有main方法才能独立运行,因为main方法是所有程序执行的入口)
4.导入junit依赖环境
判定结果:红色代表失败,绿色代表成功
一般我们会使用断言操作来处理结果:Assert.assertEquals(期望的结果,运算的);
两个注解:@Before:修饰的方法会在测试方法之前被自动执行
@After:修饰的方法会在测试方法之后被自动执行
测试方法是直接执行的不是拿给谁调用的

二、反射(反射概念:将类的各个组成部分封装为其他对象,这就是反射机制)
反射是框架设计的灵魂;框架:半成品软件,可以在框架的基础上进行软件开发,简化编码(一般我们都是直接拿来用的,但还是要掌握,将来如果自己给别人写框架的时候还是需要)
好处:(1)可以在程序运行中操作这些对象(2)可以解耦,提高程序的可扩展性)
(图中第一个为字节码文件,字节码文件通过类加载器进内存,第二个为内存,内存中有一个class类对象class class,对象会把字节码中的成员变量成员方法构造方法等封装成其他对象,将来可以根据类对象这些行为创建真正的对象)






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2