日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)JUint教程:JUnit-使用斷言

斷言

所有的斷言都包含在 Assert 類中

成都創(chuàng)新互聯(lián)公司自成立以來,一直致力于為企業(yè)提供從網(wǎng)站策劃、網(wǎng)站設(shè)計(jì)、成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、電子商務(wù)、網(wǎng)站推廣、網(wǎng)站優(yōu)化到為企業(yè)提供個(gè)性化軟件開發(fā)等基于互聯(lián)網(wǎng)的全面整合營銷服務(wù)。公司擁有豐富的網(wǎng)站建設(shè)和互聯(lián)網(wǎng)應(yīng)用系統(tǒng)開發(fā)管理經(jīng)驗(yàn)、成熟的應(yīng)用系統(tǒng)解決方案、優(yōu)秀的網(wǎng)站開發(fā)工程師團(tuán)隊(duì)及專業(yè)的網(wǎng)站設(shè)計(jì)師團(tuán)隊(duì)。

public class Assert extends java.lang.Object

這個(gè)類提供了很多有用的斷言方法來編寫測(cè)試用例。只有失敗的斷言才會(huì)被記錄。Assert 類中的一些有用的方法列式如下:

序號(hào) 方法和描述
1void assertEquals(boolean expected, boolean actual)
檢查兩個(gè)變量或者等式是否平衡
2void assertTrue(boolean condition)
檢查條件為真
3void assertFalse(boolean condition)
檢查條件為假
4void assertNotNull(Object object)
檢查對(duì)象不為空
5void assertNull(Object object)
檢查對(duì)象為空
6void assertSame(Object expected, Object actual)
assertSame() 方法檢查兩個(gè)相關(guān)對(duì)象是否指向同一個(gè)對(duì)象
7void assertNotSame(Object expected, Object actual)
assertNotSame() 方法檢查兩個(gè)相關(guān)對(duì)象是否不指向同一個(gè)對(duì)象
8void assertArrayEquals(expectedArray, resultArray)
assertArrayEquals() 方法檢查兩個(gè)數(shù)組是否相等

下面我們?cè)诶又性囼?yàn)一下上面提到的各種方法。在 C:\ > JUnit_WORKSPACE 路徑下創(chuàng)建一個(gè)文件名為 TestAssertions.java 的類

import org.junit.Test;
import static org.junit.Assert.*;

public class TestAssertions {

   @Test
   public void testAssertions() {
      //test data
      String str1 = new String ("abc");
      String str2 = new String ("abc");
      String str3 = null;
      String str4 = "abc";
      String str5 = "abc";
      int val1 = 5;
      int val2 = 6;
      String[] expectedArray = {"one", "two", "three"};
      String[] resultArray =  {"one", "two", "three"};

      //Check that two objects are equal
      assertEquals(str1, str2);

      //Check that a condition is true
      assertTrue (val1 < val2);

      //Check that a condition is false
      assertFalse(val1 > val2);

      //Check that an object isn't null
      assertNotNull(str1);

      //Check that an object is null
      assertNull(str3);

      //Check if two object references point to the same object
      assertSame(str4,str5);

      //Check if two object references not point to the same object
      assertNotSame(str1,str3);

      //Check whether two arrays are equal to each other.
      assertArrayEquals(expectedArray, resultArray);
   }
}

接下來,我們?cè)?C:\ > JUNIT_WORKSPACE 路徑下創(chuàng)建一個(gè)文件名為 TestRunner.java 的類來執(zhí)行測(cè)試用例

import org.junit.runner.JUnitCore;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;

public class TestRunner2 {
   public static void main(String[] args) {
      Result result = JUnitCore.runClasses(TestAssertions.class);
      for (Failure failure : result.getFailures()) {
         System.out.println(failure.toString());
      }
      System.out.println(result.wasSuccessful());
   }
} 

用 javac 編譯 Test case 和 Test Runner 類

C:\JUNIT_WORKSPACE>javac TestAssertions.java TestRunner.java

現(xiàn)在運(yùn)行將會(huì)運(yùn)行 Test Case 類中定義和提供的測(cè)試案例的 Test Runner

C:\JUNIT_WORKSPACE>java TestRunner

檢查運(yùn)行結(jié)果

true

注解

注解就好像你可以在你的代碼中添加并且在方法或者類中應(yīng)用的元標(biāo)簽。JUnit 中的這些注解為我們提供了測(cè)試方法的相關(guān)信息,哪些方法將會(huì)在測(cè)試方法前后應(yīng)用,哪些方法將會(huì)在所有方法前后應(yīng)用,哪些方法將會(huì)在執(zhí)行中被忽略。
JUnit 中的注解的列表以及他們的含義:

序號(hào) 注解和描述
1@Test
這個(gè)注解說明依附在 JUnit 的 public void 方法可以作為一個(gè)測(cè)試案例。
2@Before
有些測(cè)試在運(yùn)行前需要?jiǎng)?chuàng)造幾個(gè)相似的對(duì)象。在 public void 方法加該注解是因?yàn)樵摲椒ㄐ枰?test 方法前運(yùn)行。
3@After
如果你將外部資源在 Before 方法中分配,那么你需要在測(cè)試運(yùn)行后釋放他們。在 public void 方法加該注解是因?yàn)樵摲椒ㄐ枰?test 方法后運(yùn)行。
4@BeforeClass
在 public void 方法加該注解是因?yàn)樵摲椒ㄐ枰陬愔兴蟹椒ㄇ斑\(yùn)行。
5@AfterClass
它將會(huì)使方法在所有測(cè)試結(jié)束后執(zhí)行。這個(gè)可以用來進(jìn)行清理活動(dòng)。
6@Ignore
這個(gè)注解是用來忽略有關(guān)不需要執(zhí)行的測(cè)試的。

C:\ > JUNIT_WORKSPACE 路徑下創(chuàng)建一個(gè)文件名為 JunitAnnotation.java 的類來測(cè)試注解

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.Test;

public class JunitAnnotation {

   //execute before class
   @BeforeClass
   public static void beforeClass() {
      System.out.println("in before class");
   }

   //execute after class
   @AfterClass
   public static void  afterClass() {
      System.out.println("in after class");
   }

   //execute before test
   @Before
   public void before() {
      System.out.println("in before");
   }

   //execute after test
   @After
   public void after() {
      System.out.println("in after");
   }

   //test case
   @Test
   public void test() {
      System.out.println("in test");
   }

   //test case ignore and will not execute
   @Ignore
   public void ignoreTest() {
      System.out.println("in ignore test");
   }
}

接下來,我們?cè)?C:\ > JUNIT_WORKSPACE 路徑下創(chuàng)建一個(gè)文件名為 TestRunner.java 的類來執(zhí)行注解

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(JunitAnnotation.class);
      for (Failure failure : result.getFailures()) {
         System.out.println(failure.toString());
      }
      System.out.println(result.wasSuccessful());
   }
} 

用 javac 編譯 Test case 和 Test Runner 類

C:\JUNIT_WORKSPACE>javac TestAssertions.java TestRunner.java

現(xiàn)在運(yùn)行將會(huì)運(yùn)行 Test Case 類中定義和提供的測(cè)試案例的 Test Runner

C:\JUNIT_WORKSPACE>java TestRunner

檢查運(yùn)行結(jié)果

in before class
in before
in test
in after
in after class
true


網(wǎng)站題目:創(chuàng)新互聯(lián)JUint教程:JUnit-使用斷言
文章位置:http://www.5511xx.com/article/dpceghd.html