ゞ沉默是金ゞ

          魚(yú)離不開(kāi)水,但是沒(méi)有說(shuō)不離開(kāi)哪滴水.
          posts - 98,comments - 104,trackbacks - 0
          Java 調(diào)用 Ant
              public static void exeBuildFile(String build, int level) throws Exception {
                  File buildFile 
          = new File(build);
                  Project p 
          = new Project();
                  DefaultLogger consoleLogger 
          = new DefaultLogger();
                  consoleLogger.setErrorPrintStream(System.err);
                  consoleLogger.setOutputPrintStream(System.out);
                  consoleLogger.setMessageOutputLevel(level);
                  p.addBuildListener(consoleLogger);
                  
          try {
                      p.setCoreLoader(ExecuteAntFile.
          class.getClassLoader()
                              .getSystemClassLoader());
                      p.fireBuildStarted();
                      p.init();
                      ProjectHelper helper 
          = ProjectHelper.getProjectHelper();
                      helper.configureProject(p, buildFile);
                      
          // helper.parse(p, buildFile);
                      p.executeTarget(p.getDefaultTarget());
                      p.fireBuildFinished(
          null);
                  } 
          catch (BuildException e) {
                      p.fireBuildFinished(e);
                      
          throw new Exception(e);
                  }
              }

          Junit dynamic invoke testcase for reduce test method
          import java.io.File;
          import java.util.ArrayList;
          import java.util.Collection;
          import java.util.List;

          import org.apache.tools.ant.Project;
          import org.junit.Test;
          import org.junit.runner.RunWith;
          import org.junit.runners.Parameterized;
          import org.junit.runners.Parameterized.Parameters;

          import com.fmr.pzn.ant.ExecuteAntFile;

          @RunWith(Parameterized.
          class)
          public class DEVTest {

              
          private String name;
              
          private String file;

              
          public DEVTest(String name, String file) {
                  
          this.name = name;
                  
          this.file = file;
              }

              @Parameters
              
          public static Collection<Object[]> data() {
                  
          // load the files as you want
                  Collection<Object[]> data = new ArrayList<Object[]>();
                  List
          <String> list = ExecuteAntFile.SearchFile(
                          ExecuteAntFile.getTestCasePath() 
          + "/mytests-pzn/DEVINT",
                          
          "my.xml");
                  
          for (String str : list) {
                      File temp 
          = new File(str);
                      data.add(
          new Object[] {
                              temp.getParentFile().getParentFile().getName(),
                              temp.getAbsolutePath() });
                  }

                  
          return data;
              }

              @Test
              
          public void testFunction() throws Exception {
                  String andFilePath 
          = file;
                  System.out.println(andFilePath);
                  ExecuteAntFile.exeBuildFile(andFilePath, Project.MSG_INFO);
              }

          }

          ant invoke junit and junitreport
          <target name="DEVTest" depends="compile">
                  
          <echo message="===========start to run DEV junit test===========" />
                  
          <junit printsummary="true" showoutput="true" filtertrace="true" fork="true">
                      
          <classpath refid="classpath" />
                      
          <formatter type="xml" />
                      
          <sysproperty key="my.env" value="${my.env}" />
                      
          <sysproperty key="my.testname" value="${my.testname}" />
                      
          <sysproperty key="my.project.root" value="${my.project.root}" />
                      
          <test name="com.fmr.pzn.test.DEVTest" todir="${work-dir}/${my.env}/${sync.datetime}/result" />
                  
          </junit>
                  
          <echo message="===========end to run DEV junit test ===========" />
                  
                  
          <junitreport todir="${work-dir}/${my.env}/${sync.datetime}/report">
                      
          <fileset dir="${work-dir}/${my.env}/${sync.datetime}/result">
                          
          <include name="TEST-*.xml" />
                      
          </fileset>
                      
          <report todir="${work-dir}/${my.env}/${sync.datetime}/report" format="frames">
                          
          <param name="key1" expression="value1" />
                          
          <param name="key2" expression="value2" />
                      
          </report>
                  
          </junitreport>
              
          </target>

          posted on 2012-01-12 20:38 ゞ沉默是金ゞ 閱讀(226) 評(píng)論(1)  編輯  收藏

          FeedBack:
          # re: Junit + Ant
          2012-02-03 20:28 | 喜多多
          新年新氣象,天天喜多多!  回復(fù)  更多評(píng)論
            

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 宁海县| 甘孜| 桐庐县| 泗水县| 崇文区| 天祝| 芒康县| 平顶山市| 北安市| 雅安市| 静安区| 桦川县| 疏附县| 沂南县| 锡林浩特市| 凤阳县| 双流县| 鄂尔多斯市| 城口县| 安多县| 丁青县| 眉山市| 兰州市| 西昌市| 德江县| 龙岩市| 淮北市| 澎湖县| 体育| 南华县| 攀枝花市| 闽清县| 育儿| 高唐县| 花莲市| 会泽县| 绥化市| 漳平市| 洪江市| 浦东新区| 鄱阳县|