qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          eclipse下使用arquillian對seam項目進行單元測試

          版本:
            eclipse: 4.2.0
            seam: 2.3.0.Final
            jboss-as: 7.1.0.Final
            當前ftc項目pom.xml中的dependency已經包含了arquiilian依賴,所以不用再從官網上復制大片xml到自己的pom.xml中了。但要想在eclipse中執行單元測試還需要一點點改動:
            我們首先在cn.ftc.test包下寫一個測試類,代碼如下:
          package cn.ftc.test;
          import org.jboss.arquillian.container.test.api.Deployment;
          import org.jboss.arquillian.junit.Arquillian;
          import org.jboss.shrinkwrap.api.ShrinkWrap;
          import org.jboss.shrinkwrap.api.asset.EmptyAsset;
          import org.jboss.shrinkwrap.api.spec.JavaArchive;
          import org.junit.Assert;
          import org.junit.Test;
          import org.junit.runner.RunWith;
          @RunWith(Arquillian.class)
          public class ExcelProcessorTest {
          @Deployment
          public static JavaArchive createDeployment() {
          return ShrinkWrap.create(JavaArchive.class)
          .addClass(ExcelProcessorTest.class)
          .addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml");
          }
          @Test
          public void should_create_greeting() {
          System.out.println("hello");
          }
          }
            以managed方式運行測試
            此方式下無需事先啟動jboss, arquillian會自動啟動JBoss,部署測試jar包,運行測試,最后關閉jboss。
            1. 修改arquillian.xml為以下內容:
          <container qualifier="jboss" default="true">
          <configuration>
          <property name="jbossHome">你的JBoss安裝目錄</property>
          </configuration>
          </container>
            上述代碼的作用是告訴 arquillian JBoss的所在路徑,并用這個JBoss運行測試。
          2. 在項目根目錄下的pom.xml中,找到 id 為 arq-jbossas-7-managed 的profile節點, 在groupId為org.jboss.as的節點中,添加一個version節點,內容為
          7.1.1.Final。(7.1.0.Final也行)。
          <profile>
          <id>arq-jbossas-7-managed</id>
          <activation>
          <property>
          <name>arquillian</name>
          <value>jbossas-managed-7</value>
          </property>
          </activation>
          <dependencies>
          <dependency>
          <groupId>org.jboss.as</groupId>
          <artifactId>jboss-as-arquillian-container-managed</artifactId>
          <version>7.1.1.Final</version> <!-- 添加這一行 -->
          <scope>test</scope>
          </dependency>
          </dependencies>
            3. 向eclipse導入工程。
            File --> import ,選擇 existing maven projects. 如圖:
            4. 選擇profile:
            在pom.xml上點右鍵 --> maven --> select maven profiles。在彈出的對話框中構選 arq-jbossas-7-managed。如圖:
            完成后,在ExcelProcessorTest類上點擊右鍵 --> Run As --> JUnit Test 即可運行測試。
            以remote方式運行測試
            我們手動啟動JBoss,讓arquillian以我們啟動的JBoss為容器運行測試。
            1. 類似于上面步驟2,打開pom.xml,找到 id 為 arq-jbossas-7-remote 的 profile節點,在dependency中添加version節點,內容為 7.1.1.Final.
          <profile>
          <id>arq-jbossas-7-remote</id>
          <activation>
          <property>
          <name>arquillian</name>
          <value>jbossas-remote-7</value>
          </property>
          </activation>
          <dependencies>
          <dependency>
          <groupId>org.jboss.as</groupId>
          <artifactId>jboss-as-arquillian-container-remote</artifactId>
          <version>7.1.1.Final</version> <!-- 添加此行 -->
          <scope>test</scope>
          </dependency>
          </dependencies>
            2. 重復前述步驟4,這次要選擇 arq-jbossas-7-remote.
            此時我們先從終端啟動JBoss,然后再在測試類上點右鍵 --> Run As --> JUnit Test 即可運行測試.

          posted on 2014-01-06 13:15 順其自然EVO 閱讀(491) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          <2014年1月>
          2930311234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 隆化县| 浏阳市| 新野县| 南郑县| 合作市| 永修县| 遵义市| 开化县| 安仁县| 大化| 常熟市| 桐城市| 长沙县| 长寿区| 基隆市| 嘉义县| 宜兰市| 库车县| 洛南县| 平南县| 雷州市| 仙居县| 广西| 揭阳市| 青岛市| 福海县| 轮台县| 孟津县| 行唐县| 津市市| 鄂托克旗| 永昌县| 屏山县| 泉州市| 钟山县| 台江县| 塔城市| 黔东| 南京市| 嘉荫县| 衡山县|