Package cn.baiweigang.qtaf.ift

Source Code of cn.baiweigang.qtaf.ift.IftExec

/**
*
*/
package cn.baiweigang.qtaf.ift;

import java.util.ArrayList;
import java.util.List;

import cn.baiweigang.qtaf.dispatch.ExecTask;
import cn.baiweigang.qtaf.dispatch.report.TestReport;
import cn.baiweigang.qtaf.dispatch.run.TestRunInfo;
import cn.baiweigang.qtaf.dispatch.testcase.ICase;
import cn.baiweigang.qtaf.ift.testcase.autocreate.IftDataFileCase;

/**
* 接口测试任务执行类
* @author @<a href='http://weibo.com/bwgang'>bwgang</a><br/>
*
*/
public class IftExec {

  private ExecTask exec;
  private TestRunInfo runInfo;
  private List<ICase> caseList;
  private IftDataFileCase dataCase;
  public IftExec(){
    //检查相关配置,不存在则创建
    IftConf.checkConf();
     exec = new ExecTask();
     runInfo = new TestRunInfo();
     caseList = new ArrayList<>();//用例列表
     dataCase = new IftDataFileCase();
     dataCase.setIftTaskName("接口测试");   
  }
 
  /**
   * 添加用例
   * @param casePath 用例路径 必填
   * @param sheetName Excel的sheet表名 可选
   * @param caseName  用例名称 必填
   * @param cls    执行用例的类 必填
   * @param method    类中的方法 必填
   */
  public void addCase(String casePath, String sheetName, String caseName,
      Class<?> cls,String method){
    dataCase.addCase(casePath, sheetName, caseName, cls, method);
  }
 
  /**
   * 任务执行
   * @return TestReport
   */
  public TestReport run(){
    dataCase.updateXmlFileList();
    caseList.add(dataCase);
    //设置运行配置信息
    runInfo.setTaskName(dataCase.getTaskName());//任务名称
    runInfo.setCaseList(caseList);//用例
    runInfo.setHtmlReportOutPath(dataCase.getHtmlReportPath());//设置测试报告输出目录,
       
    //可选运行参数设置
//    runInfo.setTestng_OutPut(IftConf.IftPath+"testng-out/");//设置TestNG输出目录,--可选
//    runInfo.setHtmlReportOutPath(IftConf.IftPath+"report/");//设置测试报告输出目录,---可选
//    runInfo.setHtmlReportTitle("设置测试报告标题-可选");//设置测试报告标题 ---可选
//    TestngLog.setOutputTestNGLog(false);//不记录TestNG日志,--可选
   
    //执行
    exec.setRunInfo(runInfo);
    return exec.Exec();
  }

  /**
   * 返回Excel报告的路径
   * @return String
   */
  public String getExcelReportPath() {
    return dataCase.getExcelReportPath();
  }
}
TOP

Related Classes of cn.baiweigang.qtaf.ift.IftExec

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.