zoukankan      html  css  js  c++  java
  • jUnit4初探(1)

       junit4的最大特色就是比之前的版本更加人性化。主要利用的是jdk5特有的Annotation,提供一些本来不属于程序的数据。Annotation使用@annotation的形式应用于代码(类、方法以及属性)。

       @Before表示在测试程序执行之前先执行的代码块,但如果涉及到文件的读写操作,每一次执行都会打开、关闭文件,会影响程序速率。我们希望在所有测试之前读一次文件,在所有测试完成之后释放文件,而不是每次测试都读文件。junit4提出了@BeforeClass和@AfterClass,只是需要注意的是,每个类智能有一个方法被标注为@BeforeClass或AfterClass,且该方法必须是public以及static类型。

       关于静态导入。在import关键字后面加上static关键字即可,就可以把后面类的静态方法和字段导入。

       关于run方法。jUnit框架如何运行你的测试代码呢?答案是Runner。@RunWith是修饰类的。jUnit中有多个Runner方法,系统默认的@RunWith(TestClassRunner.class)。二是@RunWith(Parameterized.class),即参数化测试。假如某个方法在许多区域有参数,以成绩为例,返回值分别为(优秀、良好、一般、不及格等),则需要写4个以上的例子,这确实是一件比较麻烦的事情。告诉框架运行方法之后,我们需要提供一个参数列表,以@Parameters修饰,该方法随意命名。下一步即构造方法。三是打包测试。打包测试将需要运行的测试类集中起来,一次性测试。不过需要重写一个类,以@RunWith(Suite.class) @Suite.SuiteClasses({..,..需要测试的类}),类方法为空。

      codeview:

     1 @Before
     2     public void setUp() throws Exception {
     3         cc.clear();
     4     }
     5 
     6     @Test
     7     public void testAdd() {
     8         cc.add(2);
     9         cc.add(3);
    10         assertEquals(5, cc.getResult());
    11     }
    12 
    13     @Test
    14     public void testSubstract() {
    15         cc.substract(3);
    16         cc.substract(3);
    17         assertEquals("fucking wrong!",0, cc.getResult());
    18     }
    19     @Ignore
    20 //    @Test
    21     public void  testSqrt(){
    22         cc.sqrt(param);
    23         assertEquals(result,cc.getResult());
    24     }
    我不断的寻找
  • 相关阅读:
    ccf-集合竞价-201412-3
    ccf-命令行选项-201403-3
    ccf-路径解析201604-3
    ccf-炉石传说-201609-3
    CCF-权限查询-201612-3
    10个顶级的CSS UI开源框架
    移动端前端UI库—Frozen UI、WeUI、SUI Mobile
    @RenderBody、@RenderSection、@RenderPage、Html.RenderPartial、Html.RenderAction的作用和区别
    对比其它软件方法评估敏捷和Scrum
    SQL SERVER 2008 中三种分页方法与总结
  • 原文地址:https://www.cnblogs.com/yNds/p/4319192.html
Copyright © 2011-2022 走看看