zoukankan      html  css  js  c++  java
  • 2018.8.2 Juint测试介绍及其命名的规范

    JUnit - 测试框架

    什么是 Junit 测试框架?

    JUnit 是一个回归测试框架,被开发者用于实施对应用程序的单元测试,加快程序编制速度,同时提高编码的质量。JUnit 测试框架能够轻松完成以下任意两种结合:
    
    Eclipse 集成开发环境
    Ant 打包工具
    Maven 项目构建管理
    

    特性

    JUnit 测试框架具有以下重要特性:
    
    测试工具
    测试套件
    测试运行器
    测试分类
    
        测试工具是一整套固定的工具用于基线测试。测试工具的目的是为了确保测试能够在共享且固定的环境中运行,因此保证测试结果的可重复性。它包括:
                在所有测试调用指令发起前的 setUp() 方法。
                在测试方法运行后的 tearDown() 方法。
    

    例子

    import junit.framework.*;
    
    public class JavaTest extends TestCase {
       protected int value1, value2;
    
       // assigning the values
       protected void setUp(){
          value1=3;
          value2=3;
       }
    
       // test method to add two values
       public void testAdd(){
          double result= value1 + value2;
          assertTrue(result == 6);
       }
    }
    
    

    测试套件

    import org.junit.runner.RunWith;
    import org.junit.runners.Suite;
    
    //JUnit Suite Test
    @RunWith(Suite.class)
    @Suite.SuiteClasses({ 
       TestJunit1.class ,TestJunit2.class
    })
    public class JunitTestSuite {
    }
    import org.junit.Test;
    import org.junit.Ignore;
    import static org.junit.Assert.assertEquals;
    
    public class TestJunit1 {
    
       String message = "Robert";   
       MessageUtil messageUtil = new MessageUtil(message);
    
       @Test
       public void testPrintMessage() { 
          System.out.println("Inside testPrintMessage()");    
          assertEquals(message, messageUtil.printMessage());     
       }
    }
    import org.junit.Test;
    import org.junit.Ignore;
    import static org.junit.Assert.assertEquals;
    
    public class TestJunit2 {
    
       String message = "Robert";   
       MessageUtil messageUtil = new MessageUtil(message);
    
       @Test
       public void testSalutationMessage() {
          System.out.println("Inside testSalutationMessage()");
          message = "Hi!" + "Robert";
          assertEquals(message,messageUtil.salutationMessage());
       }
    }
    
    

    测试运行器 测试运行器 用于执行测试案例

    import org.junit.runner.JUnitCore;
    import org.junit.runner.Result;
    import org.junit.runner.notification.Failure;
    
    public class TestRunner {
       public static void main(String[] args) {
          Result result = JUnitCore.runClasses(TestJunit.class);
          for (Failure failure : result.getFailures()) {
             System.out.println(failure.toString());
          }
          System.out.println(result.wasSuccessful());
       }
    }
    

    测试类的命名定义规范

    测试类的命名规则是:Test+被测试的业务、Test+被测试的接口、Test+被测试的类
    类的名字必须由大写字母开头而单词中的其他字母均为小写;如果类名称由多个单词组成,则每个单词的首字母均应为大写,如TestMobileBind。如果类名称中包含单词缩写,则这个所写词的每个字母均应大写,如:XMLExample。
    比如你需要测试业务MobileBind ,那么它的测试类的命名就是TestMobileBind
    比如你需要测试接口GetMobileBind ,那么的测试类的命名就是TestGetMobileBind
    比如你需要测试类SetMobileBind.class,那么他的测试类的命名就是TestSetMobileBind
    
    

    测试用例的命名规则是:test+用例操作_状态。

        单词的约定与测试类命名相同。如:testSetMobileBind_NoSkyid
        比如要测试的用例是“数据库用户信息不存在时,获取Mobile绑定消息”,那么它的测试用例名称就是testSetMobileBind_NoSkyid
    

    3.测试程序的包名定义规范

    测试程序包的命名规则是:test.com.skymobi.项目名;测试公共类包的命名规则是:test.com.skymobi.common
    java包的名称都是由小写字母组成。
    测试项目,比如被测试的项目是skyups,那么测试类的包名就是test.com.skymobi.skyups。
    测试开发包,比如被测试类的包名是com.skymobi.util,那么测试类的包名就是test.com.skymobi.util。也就是说在被测试类的包名前加上“test.”,这就是测试类的包名。
    

    4.变量的命名规范

    测试程序的变量名均采用大小写混合的方式,第一个单词的首字母小写,其后单词的首字母大写
    例如:MaxValue
    变量名不应以下划线或美元符号开头,尽管这在语法上是允许的。
    变量名应简短且富于描述。变量名的选用应该易于记忆,即,能够指出其用途。尽量避免单个字符的变量名,除非是一次性的临时变量。
    

    5.常量的命名规范

    测试程序的常量名应该都使用大写字母,并且指出该常量完整含义。如果一个常量名称由多个单词组成,则应该用下划线来分割这些单词。
    例如:MAX_VALUE
    
  • 相关阅读:
    C#里partial关键字的作用
    Xamarin.Android之布局文件智能提示问题
    C语言文件操作
    CArray
    Unicode和多字节的相互转换
    可变参数问题研究
    VC6.0支持UNICODE的步骤
    Unicode编码表
    @@
    内存映射文件原理
  • 原文地址:https://www.cnblogs.com/qichunlin/p/9399021.html
Copyright © 2011-2022 走看看