Sky's blog

          我和我追逐的夢

          常用鏈接

          統計

          其他鏈接

          友情鏈接

          最新評論

          TestNG官方文檔中文版(8)-類級別注解和并發


          5.8 - Class level annotations

          @Test注解可以放置在類上:

          @Test
          public class Test1 {
            
          public void test1() {
            }

            
          public void test2() {
            }
          }

          類級別注解的效果是將這個類的所有的public方法都變成測試方法,即使他們沒有被注解。還可以在需要增加屬性的方法上重復@Test注解。

          例如:

          @Test
          public class Test1 {
            
          public void test1() {
            }

            @Test(groups 
          = "g1")
            
          public void test2() {
            }
          }

          將方法test1()和test2()都變成測試方法,但是在此之上,test2()現在屬于組"g1".

          5.9 - Parallel running and time-outs

          可以通過使用parallel屬性要求TestNG在單獨的線程中運行測試。這個屬性可以在兩個值中取其一:

          <suite name="My suite" parallel="methods" thread-count="5">

          <suite name="My suite" parallel="tests" thread-count="5">

              * parallel="methods": TestNG將在單獨的線程中運行測試方法,除了那些依賴其他測試方法的,這些將在同一個線程中運行,以保證他們的執行順序。

              * parallel="tests": TestNG將在一個線程中運行所有在同一個<test>標簽中的測試方法,但是每個<test>標簽將在單獨的線程中運行。這種方式容許把所有不是線程安全的類分組到相同的<test>標簽中,保證他們將在相同的線程中運行,有利于TestNG使用盡可能多的線程來運行測試。

              此外,thread-count屬性容許指定運行時將分配多少線程。
             
              注意:@Test的屬性timeOut在并發和非并發模型下都可以工作。

              也可以指定@Test方法在不同的線程中被調用。可以使用threadPoolSize屬性來實現這樣的結果:

          @Test(threadPoolSize = 3, invocationCount = 10,  timeOut = 10000)
          public void testServer() {
          }

          在這個例子中,方法testServer將被3個不同線程調用10次。此外,10秒種的time-out屬性保證任何線程都不會長時間阻塞。

          posted on 2008-09-05 08:09 sky ao 閱讀(1753) 評論(0)  編輯  收藏 所屬分類: software test

          主站蜘蛛池模板: 崇明县| 越西县| 车致| 海盐县| 五莲县| 阿瓦提县| 庆元县| 辰溪县| 安顺市| 都兰县| 嘉禾县| 昭觉县| 江川县| 金寨县| 齐河县| 泾川县| 桃园市| 丰城市| 若尔盖县| 石首市| 义乌市| 沈阳市| 延庆县| 江源县| 盐津县| 周口市| 肥城市| 九龙城区| 仁寿县| 呼和浩特市| 平遥县| 柯坪县| 桃江县| 昌吉市| 黄冈市| 鹿邑县| 曲松县| 双辽市| 东港市| 安义县| 靖安县|