其他分享
首页 > 其他分享> > 自己写一个JUnit3-day0

自己写一个JUnit3-day0

作者:互联网

JUnit是一个著名的单元测试框架。老版本的3.*是基于反射原理,源码也很简单,可以先自己做一个JUnit3,然后再根据源码改进自己的JUnit。   需要的基础:     1.java基础     2.通过反射实例化,且调用实例的方法     3...       day0 下来了解一下JUnit3怎么使用。 关键点有:1.必须继承TestCase,2.方法名以test为前缀,非test前缀需要在执行时指定方法名,3.方法必须为public,返回值为void   在IDEA里,添加junit3的依赖或导入jar以后,右键运行该类。     然鹅,这样的运行方式是错误的。虽然结果是成功了,但是并非是按照预料的使用了JUnit3.*,而是使用了IDEA内置的JUnit4,具体可以查看控制台第一行输出的内容的黑体部分  

"C:\Program Files\Java\jdk1.8.0_141\bin\java.exe" -ea -Didea.test.cyclic.buffer.size=1048576 "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2019.2\lib\idea_rt.jar=62797:C:\Program Files\JetBrains\IntelliJ IDEA 2019.2\bin" -Dfile.encoding=UTF-8 ...此处有省略... com.intellij.rt.execution.junit.JUnitStarter -ideVersion5 -junit4 wangc.JUnit3Demo

  使用IDE能够极大的方便开发过程,但是一些高度集成的功能导致我们不容易理解一些基础原理。所以,我们使用IDE写,然后手工编译运行。 lib:jar包(如果需要在idea中运行,需要在Project Structure中配置Libraries。手工编译运行则不需要配置相关) src:源码目录   新建JUnit3Demo.java
public class JUnit3Demo extends TestCase {
 
    public void testAdd1(){
        System.out.println("this is testAdd1");
    }
 
    public void testAdd2(){
        System.out.println("this is testAdd2");
    }
 
}

 

  然后,打开命令提示符(或Shell终端),进入src目录,然后执行编译javac
D:\workspace_HelloWorld\HelloWorld_JUnit3>javac  -encoding UTF-8 -classpath "lib/junit-3.8.2.jar" -d ./out src/com/wangc/day0/JUnit3Demo.java

然后运行java

D:\workspace_HelloWorld\HelloWorld_JUnit3>java -classpath "./out;lib/junit-3.8.2.jar" junit.textui.TestRunner com.wangc.day0.JUnit3Demo

(乌鸦注:关于javac和java的运行参数-encoding、-classpath、-d 此处按下不表,可自行百度)

  好,成功使用JUnit3做了两个单元测试。 可以看到,最后我们其实是运行的JUnit提供的主类 junit.textui.TestRunner,我们自己写的业务类是作为一个参数传递的。所以,必须要了解一下反射的基本操作。                                      

标签:java,JUnit3Demo,jar,自己,day0,JUnit3,junit
来源: https://www.cnblogs.com/wang1537/p/14435056.html