内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

JUnit和TestNG的區(qū)別-創(chuàng)新互聯(lián)

網(wǎng)上看了一篇英文帖子,講解JUnit和TestNG框架的區(qū)別,挺好的,我這里翻譯下。

為霍林郭勒等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及霍林郭勒網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站建設(shè)、做網(wǎng)站、霍林郭勒網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!

1.對于注解類的支持

功能
JUnitTestNG
標(biāo)注為類/方法為測試類和方法@Test@Test
標(biāo)注為在suite中所有測試之前運(yùn)行
@BeforeSuite
標(biāo)注為在suite中所有測試之后運(yùn)行@AfterSuite
標(biāo)注為在測試之前運(yùn)行@BeforeTest
標(biāo)注為在測試之后運(yùn)行@AfterTest
標(biāo)注為在測試Group中第一個測試方法之前運(yùn)行@BeforeGroups
標(biāo)注為在測試Group中最后一個測試方法之后運(yùn)行@AfterGroups
標(biāo)注為當(dāng)前測試類中第一個測試方法之前運(yùn)行@BeforeClass@BeforeClass
標(biāo)注為當(dāng)前測試類中最后一個測試方法之后運(yùn)行@AfterClass@AfterClass
標(biāo)注為在每次測試方法之前運(yùn)行@Before@BeforeMethod
標(biāo)注為在每次測試方法之后運(yùn)行@After@AfterMethod
忽略某測試,讓其不執(zhí)行@Ignore@Test(enable=false)
期待測試拋出什么異常@Test(expected=XXXException.class)@Test(exceptedExceptions=XXXException.class)
測試超時,如果測試的執(zhí)行時間超過了毫秒為單位設(shè)置的時間,那么就停止測試并且標(biāo)記為失敗
@Test(timeout=1000)@Test(timeout=1000)

2.測試參數(shù)化

對于TestNG和JUnit都有不同的參數(shù)化設(shè)定功能,可是表現(xiàn)形式不同。參數(shù)化設(shè)定意味著當(dāng)運(yùn)行測試的時候,參數(shù)可以從外部傳入到這個測試單元中。

對于TestNG來說,要2部分,一是當(dāng)構(gòu)造測試代碼時候,要用@Parameters(value=XXX)來表示這個測試需要什么參數(shù),這樣的優(yōu)點(diǎn)是可以讓測試更加靈活并且可以根據(jù)不同的參數(shù)來得到不同的期望結(jié)果,比如:

public class TestNGTest6_1_0 {
                                                                                                                                                                                                     
       @Test
       @Parameters(value="number")
       public void parameterIntTest(int number) {
          System.out.println("Parameterized Number is : " + number);
       }
                                                                                                                                                                                                     
      }

然后,在我們的XML文件中,我們把參數(shù)的具體值設(shè)置進(jìn)來,如下:

<!DOCTYPE suite SYSTEM "http://beust.com/testng/testng-1.0.dtd" >
<suite name="My test suite">
  <test name="testing">
                                                                                                                                                                                     
    <parameter name="number" value="2"/> 
                                                                                                                                                                                     
    <classes>
       <class name="com.fsecure.demo.testng.TestNGTest6_0" />
    </classes>
  </test>
</suite>

那么,如果我們要給的參數(shù)比較復(fù)雜,我們無法用一個簡單的String或者 原子類型在XML文件”推“給測試方法,那么怎么辦呢?這時候,我們就要用”拉“模型了,我們用一個DataProvider屬性來給被測試的方法上聲明它需要的數(shù)據(jù),然后平行的,用@DataProvider注解來標(biāo)注一個方法,讓這個方法的返回值返回具體的數(shù)據(jù),這樣我們2個拼接下就完美了。

比如說:下面代碼聲明我們的測試類需要一個DataProvider:

@Test(dataProvider = "Data-Provider-Function")
   public void parameterIntTest(TestNGTest6_3_0 clzz) {
      System.out.println("Parameterized Number is : " + clzz.getMsg());
      System.out.println("Parameterized Number is : " + clzz.getNumber());
   }

然后相應(yīng)的我們用@DataProvider來標(biāo)注一個方法,這個方法提供了數(shù)據(jù):

//This function will provide the patameter data
    @DataProvider(name = "Data-Provider-Function")
    public Object[][] parameterIntTestProvider() {
                                                                  
        TestNGTest6_3_0 obj = new TestNGTest6_3_0();
        obj.setMsg("Hello");
        obj.setNumber(123);
                                                                  
        return new Object[][]{
                   {obj}
        };
    }

3.測試依賴性:

對于JUnit 來說,所有的測試彼此之間都是獨(dú)立的,毫無依賴性。

但是對于 TestNG來說,我們完全可以讓測試彼此之間有依賴性,做法就是dependsOnMethods屬性來標(biāo)識一個被依賴的測試方法:

@Test
   public void method1() {
      System.out.println("This is method 1");
   }
   @Test(dependsOnMethods={"method1"})
   public void method2() {
       System.out.println("This is method 2");
   }

本文名稱:JUnit和TestNG的區(qū)別-創(chuàng)新互聯(lián)
本文來源:http://www.rwnh.cn/article8/cojjip.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計、服務(wù)器托管網(wǎng)頁設(shè)計公司、自適應(yīng)網(wǎng)站、標(biāo)簽優(yōu)化企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計公司
马尔康县| 南阳市| 扎赉特旗| 朔州市| 阿拉善右旗| 阿坝县| 吴忠市| 太谷县| 剑阁县| 榆树市| 大渡口区| 新安县| 五大连池市| 东阳市| 依安县| 武穴市| 峡江县| 益阳市| 奈曼旗| 棋牌| 漯河市| 富平县| 手游| 孝感市| 瑞金市| 富平县| 布拖县| 南澳县| 内黄县| 汶上县| 长沙市| 江油市| 枣庄市| 防城港市| 镶黄旗| 梁河县| 烟台市| 吴桥县| 佳木斯市| 桦甸市| 库尔勒市|