/* ////The filter can only filter the system fields //TDFilter TFilter = TestFact.Filter as TDFilter; ////All match item will be filtered by the provided field and value //foreach (TestConfigFile.AutorunFilerConfig filter in TConfig.CaseFilter.AutorunFilter) //{ // TFilter[filter.FieldName] = filter.FieldValue; //} //TFilter[TConfig.CaseFilter.TestSetName] = TSName; ////All matched test cases will be storaged in TList temporarily //List TList = TFilter.NewList(); ////Add test set name */ private void RunCurrentSet(TestSet RunSet, string destMachine, bool isQTPRun, string configpath) { Console.Out.WriteLine("Enter the RunCurrentSet"); if (isQTPRun) { #region Using QTP Console.Out.WriteLine("==========[void RunCurrentSet]Now something exception happen for QTP scheduler"); //Console.Out.WriteLine("AutoIntSys: Begin to load QTP"); //TSTestFactory TSTestFact = RunSet.TSTestFactory as TSTestFactory; //List runList = new List(); //runList = TSTestFact.NewList("") as List; //if (runList.Count < 1) // return; //TSScheduler Scheduler = RunSet.StartExecution("localhost") as TSScheduler; //if (destMachine == "localhost") // Scheduler.RunAllLocally = true; //else // Scheduler.TdHostName = destMachine; //try //{ // Debug.Print("AutoIntSys: Run Start at: " + TestUtility.GetCurrentTime()); // Scheduler.Run(runList); //} //catch (Exception e) //{ // Debug.Print("AutoIntSys: RUNNING Test Case Error!"); // Debug.Print("AutoIntSys: " + e.Message); //} //ExecutionStatus execStatus = Scheduler.ExecutionStatus as ExecutionStatus; //bool isRunFinished = false; //while (!isRunFinished) //{ // execStatus.RefreshExecStatusInfo(runList, true); // isRunFinished = execStatus.Finished; // System.Threading.Thread.Sleep(5000); //} //Debug.Print("AutoIntSys: Run Finish at: " + TestUtility.GetCurrentTime()); //Console.WriteLine("Run Finish at: {0}", TestUtility.GetCurrentTime()); #endregion } else { CustomerProcess.CustomerProcess cp = new CustomerProcess.CustomerProcess(); if (cp.LoadRunInstance(".") > 0) { AutoLog.Info("AutoIntSys: [void RunCurrentSet]Current Test set start run!"); //Debug.Print("AutoIntSys: Run CP Start at: " + TestUtility.GetCurrentTime()); //Console.Out.WriteLine("==========[void RunCurrentSet]Current Test set start: " + TestUtility.GetCurrentTime()); AutoTestInterface.IRunTest runScheduler = cp.GetRunName(configFile.RunParameter.CustomerTestPro); runScheduler.Run(tdConn, RunSet, configpath); System.Threading.Thread.Sleep(5000); runScheduler.RunFinished(); AutoLog.Info("AutoIntSys: [void RunCurrentSet]Current Test set end run!"); //Debug.Print("AutoIntSys: Run CP Finish at: " + TestUtility.GetCurrentTime()); //Console.Out.WriteLine("==========[void RunCurrentSet]Current Test set end: " + TestUtility.GetCurrentTime()); } #region Unused /**** // RunSet.ID // invoke the test execution TSTestFactory TSTestFact = RunSet.TSTestFactory as TSTestFactory; List runList = new List(); runList = TSTestFact.NewList("") as List; foreach (TSTest instance in runList) { //generate the run first RunFactory runFact = instance.RunFactory as RunFactory; DateTime now = TestUtility.GetCurrentTime(); Run instanceRun = runFact.AddItem("Run_" + now.ToShortDateString() + "_" + now.ToShortTimeString()) as Run; QCOperation.QCInformation info = new QCOperation.QCInformation(); // string runID = instanceRun.ID as string; //Initial the start status info.SetTestRunStatus(tdConn, instanceRun.ID.ToString(), "Not Completed"); //Add the run steps //info.SetTestRunStep(tdConn, runID, "Step 1", "Passed"); //info.SetTestRunStep(tdConn, runID, "Step 2", "Failed"); //Update the end status //info.SetTestRunStatus(tdConn, runID, "Failed"); //Download test case attachments string caseID = instance.TestId as string; ArrayList attachments = new ArrayList(); QCOperation.QCAttachment taa = new QCOperation.QCAttachment(); foreach (string downfile in configFile.RunParameter.DownloadFile) { attachments.Add(taa.DownloadAttachment(tdConn, "TEST", caseID, downfile, "C:\\temp")); } //When finish the test, record the summary in instance of testset string instanceID = instance.ID as string; string scriptFilename = null; string dataFilename = null; for(int i = 0; i < attachments.Count; i++) { ArrayList downList = attachments[i] as ArrayList; if (downList.Count > 0) { foreach (Object fileObj in downList) { string tempFilePath = fileObj as string; if (tempFilePath != null && tempFilePath.EndsWith("cod")) { scriptFilename = tempFilePath; } if (tempFilePath != null && tempFilePath.EndsWith("iod")) { dataFilename = tempFilePath; } } } } if (scriptFilename != null) { PAS.AutoTest.ScriptRunner.ScriptRunner sr = new PAS.AutoTest.ScriptRunner.ScriptRunner(); PAS.AutoTest.ScriptRunner.ExecuteResult er; if (dataFilename!=null) { er = sr.Run(scriptFilename, dataFilename, 600); } else { er = sr.Run(scriptFilename, string.Empty, 600); } switch (er.Output.Result) { case PAS.AutoTest.TestData.TestResult.Pass: info.SetTestRunStatus(tdConn, instanceRun.ID.ToString(), "Passed"); break; case PAS.AutoTest.TestData.TestResult.Fail: info.SetTestRunStatus(tdConn, instanceRun.ID.ToString(), "Failed"); break; default: info.SetTestRunStatus(tdConn, instanceRun.ID.ToString(), "Not Completed"); break; } info.SetTestInstanceSummary(tdConn, instanceID, configFile.RunParameter.NumOfPassed, er.Output.Summary.Passed.ToString()); info.SetTestInstanceSummary(tdConn, instanceID, configFile.RunParameter.NumOfTotal, er.Output.Summary.TotalRun.ToString()); } } ****/ #endregion } }
/* * ////The filter can only filter the system fields * //TDFilter TFilter = TestFact.Filter as TDFilter; * ////All match item will be filtered by the provided field and value * //foreach (TestConfigFile.AutorunFilerConfig filter in TConfig.CaseFilter.AutorunFilter) * //{ * // TFilter[filter.FieldName] = filter.FieldValue; * //} * //TFilter[TConfig.CaseFilter.TestSetName] = TSName; * ////All matched test cases will be storaged in TList temporarily * //List TList = TFilter.NewList(); * * ////Add test set name */ private void RunCurrentSet(TestSet RunSet, string destMachine, bool isQTPRun, string configpath) { Console.Out.WriteLine("Enter the RunCurrentSet"); if (isQTPRun) { #region Using QTP Console.Out.WriteLine("==========[void RunCurrentSet]Now something exception happen for QTP scheduler"); //Console.Out.WriteLine("AutoIntSys: Begin to load QTP"); //TSTestFactory TSTestFact = RunSet.TSTestFactory as TSTestFactory; //List runList = new List(); //runList = TSTestFact.NewList("") as List; //if (runList.Count < 1) // return; //TSScheduler Scheduler = RunSet.StartExecution("localhost") as TSScheduler; //if (destMachine == "localhost") // Scheduler.RunAllLocally = true; //else // Scheduler.TdHostName = destMachine; //try //{ // Debug.Print("AutoIntSys: Run Start at: " + TestUtility.GetCurrentTime()); // Scheduler.Run(runList); //} //catch (Exception e) //{ // Debug.Print("AutoIntSys: RUNNING Test Case Error!"); // Debug.Print("AutoIntSys: " + e.Message); //} //ExecutionStatus execStatus = Scheduler.ExecutionStatus as ExecutionStatus; //bool isRunFinished = false; //while (!isRunFinished) //{ // execStatus.RefreshExecStatusInfo(runList, true); // isRunFinished = execStatus.Finished; // System.Threading.Thread.Sleep(5000); //} //Debug.Print("AutoIntSys: Run Finish at: " + TestUtility.GetCurrentTime()); //Console.WriteLine("Run Finish at: {0}", TestUtility.GetCurrentTime()); #endregion } else { CustomerProcess.CustomerProcess cp = new CustomerProcess.CustomerProcess(); if (cp.LoadRunInstance(".") > 0) { AutoLog.Info("AutoIntSys: [void RunCurrentSet]Current Test set start run!"); //Debug.Print("AutoIntSys: Run CP Start at: " + TestUtility.GetCurrentTime()); //Console.Out.WriteLine("==========[void RunCurrentSet]Current Test set start: " + TestUtility.GetCurrentTime()); AutoTestInterface.IRunTest runScheduler = cp.GetRunName(configFile.RunParameter.CustomerTestPro); runScheduler.Run(tdConn, RunSet, configpath); System.Threading.Thread.Sleep(5000); runScheduler.RunFinished(); AutoLog.Info("AutoIntSys: [void RunCurrentSet]Current Test set end run!"); //Debug.Print("AutoIntSys: Run CP Finish at: " + TestUtility.GetCurrentTime()); //Console.Out.WriteLine("==========[void RunCurrentSet]Current Test set end: " + TestUtility.GetCurrentTime()); } #region Unused /**** * * // RunSet.ID * // invoke the test execution * TSTestFactory TSTestFact = RunSet.TSTestFactory as TSTestFactory; * List runList = new List(); * runList = TSTestFact.NewList("") as List; * foreach (TSTest instance in runList) * { * //generate the run first * RunFactory runFact = instance.RunFactory as RunFactory; * DateTime now = TestUtility.GetCurrentTime(); * Run instanceRun = runFact.AddItem("Run_" + now.ToShortDateString() + * "_" + now.ToShortTimeString()) as Run; * * QCOperation.QCInformation info = new QCOperation.QCInformation(); * // string runID = instanceRun.ID as string; * //Initial the start status * info.SetTestRunStatus(tdConn, instanceRun.ID.ToString(), "Not Completed"); * //Add the run steps * //info.SetTestRunStep(tdConn, runID, "Step 1", "Passed"); * //info.SetTestRunStep(tdConn, runID, "Step 2", "Failed"); * //Update the end status * //info.SetTestRunStatus(tdConn, runID, "Failed"); * * //Download test case attachments * string caseID = instance.TestId as string; * ArrayList attachments = new ArrayList(); * QCOperation.QCAttachment taa = new QCOperation.QCAttachment(); * foreach (string downfile in configFile.RunParameter.DownloadFile) * { * attachments.Add(taa.DownloadAttachment(tdConn, "TEST", caseID, downfile, "C:\\temp")); * } * * //When finish the test, record the summary in instance of testset * string instanceID = instance.ID as string; * string scriptFilename = null; * string dataFilename = null; * for(int i = 0; i < attachments.Count; i++) * { * ArrayList downList = attachments[i] as ArrayList; * if (downList.Count > 0) * { * foreach (Object fileObj in downList) * { * string tempFilePath = fileObj as string; * if (tempFilePath != null && tempFilePath.EndsWith("cod")) * { * scriptFilename = tempFilePath; * } * if (tempFilePath != null && tempFilePath.EndsWith("iod")) * { * dataFilename = tempFilePath; * } * } * } * } * if (scriptFilename != null) * { * PAS.AutoTest.ScriptRunner.ScriptRunner sr = new PAS.AutoTest.ScriptRunner.ScriptRunner(); * PAS.AutoTest.ScriptRunner.ExecuteResult er; * if (dataFilename!=null) * { er = sr.Run(scriptFilename, dataFilename, 600); } * else * { er = sr.Run(scriptFilename, string.Empty, 600); } * switch (er.Output.Result) * { * case PAS.AutoTest.TestData.TestResult.Pass: * info.SetTestRunStatus(tdConn, instanceRun.ID.ToString(), "Passed"); * break; * case PAS.AutoTest.TestData.TestResult.Fail: * info.SetTestRunStatus(tdConn, instanceRun.ID.ToString(), "Failed"); * break; * default: * info.SetTestRunStatus(tdConn, instanceRun.ID.ToString(), "Not Completed"); * break; * } * * info.SetTestInstanceSummary(tdConn, instanceID, configFile.RunParameter.NumOfPassed, er.Output.Summary.Passed.ToString()); * info.SetTestInstanceSummary(tdConn, instanceID, configFile.RunParameter.NumOfTotal, er.Output.Summary.TotalRun.ToString()); * } * } ****/ #endregion } }