发表于: 2017-09-07 23:14:22

1 900


今天完成的事

认识Junit

JUnit是由 Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework)。Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能。Junit是一套框架,继承TestCase类,就可以用Junit进行自动测试了。

 

Junit实例

步骤1 添加jar包

 

步骤2 创建一个加减乘除的类,取名Dog.java

package cn.edu.junit;

public class Dog {
//加
   public int add(int a,int b){
return 0;
}
//减
   public int subtract(int a,int b){
return a-b;
}
//乘
   public int multiply(int a,int b){
return a*b;
}
//除
   public int divide(int a,int b){
return a/b}}


步骤3 添加一个插件JunitGenerator

 

通过快捷键Ctrl+shift+T自动创建一个测试类DogTest

步骤4 Run DogTest.java

 

这个测试类没问题,我们试着搞点问题出来测试一下Junit

步骤5 修改Test类中的add方法

public void add() throws Exception {
Dog dog = new Dog();
int result = dog.add(1,3);
assertEquals(4,result);
}


步骤6 修改Dog类的add方法,再次运行测试

public int add(int a,int b){
return 0;
}


步骤7 再次运行测试类

java.lang.AssertionError: 

Expected :4

Actual   :0


程序报错,原因是实际值和预期值不符合



认识spring

1.spring是开源的轻量级框架。什么是开源呢,开源即免费的,放出源代码的意思。轻量级意味着该框架不用过多依赖很多其他东西,可以直接使用,这就叫轻量级框架。spring还是一个一站式框架

2.spring有很多特征,其中最需要注意的两个核心部分主要是面向切面(aop)和控制反转(ioc)。

什么叫aop呢?面向切面编程,扩展功能不依靠修改源代码

什么叫ioc呢?控制反转,打个比方,有一个类,类里面有非静态的方法,调用类里面的对象,创建类的对象,使用对象调用方法,创建类对象的过程,需要new一个对象,而ioc把类对象的创建交给了spring来配置,不是通过new方式实现。

3.spring是一个一站式框架

什么叫做一站式框架呢?

spring给javaee三层结构中的每一层都提供了不同的解决技术

web层:springMVC

service层:spring的ioc

dao层:spring的jdbctemplate

 

Spring的ioc操作

1.把对象的创建交给spring进行管理

2.ioc操作两部分

1)ioc的配置文件方式

2)ioc的注解方式 

 

ioc底层原理

1.ioc的底层远离实用技术

1)xml配置文件

2)dom4j解决xml

3)工厂设计模式

4)反射

 

思想:高内聚低耦合

 

 

明天计划的事

继续学习Spring,理解IocAOP,有时间可以找几个实例写写看

遇到的问题

JUnit-4.12使用报java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing错误

报错原因是因为JUnit-4.11版本后没有了hamcrest的包需要添加

收获

初步了解了Spring的概念和Junit的使用方法,巩固MyBatis的知识




返回列表 返回列表
评论

    分享到