private void treeViewALM_AfterSelect(object sender, TreeViewEventArgs e) { Cursor.Current = Cursors.WaitCursor; if (e.Node.Tag != null) { if (e.Node.Tag.ToString().ToLower() == "testset") { TestSetTreeManager testSetTreeMgr = (TestSetTreeManager)conn.TestSetTreeManager; var path = BuildPath(e.Node); TestSetFolder rootTestSetFolder = (TestSetFolder)testSetTreeMgr.get_NodeByPath(path); List testSetList = rootTestSetFolder.FindTestSets(e.Node.Text, false, string.Empty); IEnumerator enumerator = testSetList.GetEnumerator(); if (enumerator.MoveNext()) { TestSet testSet = (TestSet)enumerator.Current; TSTestFactory tsTestFactory = (TSTestFactory)testSet.TSTestFactory; ListClass testList = (ListClass)tsTestFactory.NewList(string.Empty); IEnumerator testListEnum = testList.GetEnumerator(); if (dtALMTestDetails == null) { dtALMTestDetails = BuildDataTable(); } else { dtALMTestDetails.Clear(); } List TSSetFields = tsTestFactory.Fields; while (testListEnum.MoveNext()) { DataRow drTestDetails = dtALMTestDetails.NewRow(); object item = testListEnum.Current; TSTest atest = (TSTest)testListEnum.Current; drTestDetails["TestName"] = atest.TestName; drTestDetails["Status"] = atest.Status; drTestDetails["FailureReason"] = atest["TC_USER_01"]; drTestDetails["JenkinsLog"] = atest["TC_USER_09"]; dtALMTestDetails.Rows.Add(drTestDetails); } } dgvALM.DataSource = dtALMTestDetails; } else { dtALMTestDetails.Clear(); dgvALM.DataSource = dtALMTestDetails; } } else { dtALMTestDetails.Clear(); dgvALM.DataSource = dtALMTestDetails; } Cursor.Current = Cursors.Default; }
private void UploadALM(string strSelectedScriptName, string strStatus, string strFailureReason, string strJenkinsLog) { string strSelectedTestSetName = treeViewALM.SelectedNode.Name; string strSelectedTestSetFullPath = BuildPath(treeViewALM.SelectedNode);; TestSetTreeManager testSetTreeMgr = (TestSetTreeManager)conn.TestSetTreeManager; TestSetFolder rootTestSetFolder = (TestSetFolder)testSetTreeMgr.get_NodeByPath(strSelectedTestSetFullPath); List testSetList = rootTestSetFolder.FindTestSets(strSelectedTestSetName, false, string.Empty); IEnumerator enumerator = testSetList.GetEnumerator();; if (enumerator.MoveNext()) { TestSet testSet = (TestSet)enumerator.Current; TSTestFactory tsTestFactory = (TSTestFactory)testSet.TSTestFactory; ListClass testList = (ListClass)tsTestFactory.NewList(string.Empty); IEnumerator testListEnum = testList.GetEnumerator(); while (testListEnum.MoveNext()) { object item = testListEnum.Current; TSTest atest = (TSTest)testListEnum.Current; if (atest.TestName.ToLower() == strSelectedScriptName.ToLower()) { atest.Status = strStatus; atest["TC_USER_01"] = strFailureReason; atest["TC_USER_09"] = strJenkinsLog; atest.Post(); } } } }
/** * find the test sets that will be updated in QC * * @param string tsPath * @param string tsName * @return List of TestSet */ public List retrieveTestSets(string tsPath, string tsName) { log.Debug("...in retriveTestSet() " + tsPath + " " + tsName); TestSetFolder tsFolder = retrieveFolder(tsPath); if (tsFolder == null) { throw new QCException("no TestSetFolder at " + tsPath); } List tsList = tsFolder.FindTestSets(tsName, false, null); if (tsList == null) { throw new QCException("no TestSets matching " + tsName); } if (tsList.Count < 1) { throw new QCException("no TestSets found matching " + tsName); } return(tsList); }
public TestSet GetTestSet(String path, String testSetName) { TestSetFactory testSetFactory = connection.TestSetFactory; TestSetTreeManager testSetTreeManager = connection.TestSetTreeManager; TestSetFolder testSetFolder = (TestSetFolder)testSetTreeManager.NodeByPath[path]; List testSetList = testSetFolder.FindTestSets(testSetName); TestSet testSet = testSetList[0]; return(testSet); }
/// <summary> /// The FindListOfTestSetsByPath. /// </summary> /// <param name="testLabPath">The testLabPath<see cref="string"/>.</param> /// <returns>The <see cref="List{ALMTestSetInstance}"/>.</returns> private List <TestSetInstance> FindListOfTestSetsByPath(string testLabPath) { List <TestSetInstance> res = new List <TestSetInstance>(); // create a new list of ALMTestSetInstances TestSetTreeManager tree = this.connection.TestSetTreeManager as TestSetTreeManager; // gets tree set mananger form QC Connection try { TestSetFolder tsFolder = tree.NodeByPath[testLabPath] as TestSetFolder; // gets test set folder from the testLabPath List tsList = tsFolder.FindTestSets(string.Empty); // gets list of test sets in the folder foreach (TestSet test in tsList) { res.Add(new TestSetInstance(test, this.Username)); } } catch (Exception) { } return(res); // return list of ALMTestCaseInstance }
/// <summary> /// The GetAllTestSetByPath. /// </summary> /// <param name="path">The path<see cref="string"/>.</param> /// <returns>The <see cref="TestSetInstance"/>.</returns> public List <string> GetAllTestSetByPath(string path) { List <string> res = new List <string>(); TestSetTreeManager tree = this.connection.TestSetTreeManager as TestSetTreeManager; try { TestSetFolder tsFolder = tree.NodeByPath[path] as TestSetFolder; List tsList = tsFolder.FindTestSets(string.Empty); foreach (TestSet test in tsList) { res.Add($"{test.ID}"); } } catch (Exception) { } return(res); }
private void Button_Click_1(object sender, RoutedEventArgs e) { try { TDConnection tdConn = new TDConnection(); tdConn.InitConnectionEx(qcUrl.Text); tdConn.ConnectProjectEx(qcDomain.Text, qcProject.Text, qcLogin.Text, qcPassword.Password); //MessageBox.Show((string)qcUrl.Text); //MessageBox.Show((string)qcDomain.Text); //MessageBox.Show((string)qcProject.Text); //MessageBox.Show((string)qcLogin.Text); //MessageBox.Show((string)qcPassword.Password); //MessageBox.Show((string)qcDomain.Text); //MessageBox.Show((string)testFolder.Text); //MessageBox.Show((string)testSet.Text); //RunFactory runFactory = (RunFactory)test.RunFactory;// //string testFolder = "^" + @"Root\MULTUM\Monthly Testing\SDK v4\"; //string testSet = "BNF SDKv4 Server and Update"; TestSetFactory tsFactory = (TestSetFactory)tdConn.TestSetFactory; TestSetTreeManager tsTreeMgr = (TestSetTreeManager)tdConn.TestSetTreeManager; TestSetFolder tsFolder = (TestSetFolder)tsTreeMgr.get_NodeByPath(testFolder.Text); TDAPIOLELib.List tsList = (TDAPIOLELib.List)tsFolder.FindTestSets((string)testSet.Text, false, null); //TDAPIOLELib.List tsTestList = tsFactory.NewList(""); //List tsList = tsFolder.FindTestSets(testSet, false, "status=No Run"); //Feature\Multum\Black Box\Monthly Testing\SDK v4 foreach (TestSet testset in tsList) { Console.WriteLine("Test Set Folder Path: {0}", testFolder); Console.WriteLine("Test Set: {0}", testset.Name); TestSetFolder tsfolder = (TestSetFolder)testset.TestSetFolder; //string testFolder = "^" + @"Root\MULTUM\Monthly Testing\SDK v4\"; TSTestFactory tsTestFactory = (TSTestFactory)testset.TSTestFactory; TDAPIOLELib.List tsTestList = tsTestFactory.NewList(""); //} foreach (TSTest tsTest in tsTestList)//no such interface supported { Console.WriteLine("Test Set: {0}", tsTest.Name); //Console.ReadLine(); string status = (string)tsTest.Status; Console.WriteLine("STATUS {0}", status); //Console.WriteLine("PARAMS {0}",tsTest.Params); Console.WriteLine("PARAMS {0}", tsTest.History); TDAPIOLELib.Run lastRun = (TDAPIOLELib.Run)tsTest.LastRun; // don't update test if it may have been modified by someone else if (lastRun == null) { RunFactory runFactory = (RunFactory)tsTest.RunFactory; TDAPIOLELib.List runs = runFactory.NewList(""); Console.WriteLine("test runs: {0}", runs.Count); String date = DateTime.Now.ToString("MM-dd_hh-mm-ss"); TDAPIOLELib.Run run = (TDAPIOLELib.Run)runFactory.AddItem("Run_" + date); //Run_5-23_14-49-52 var oRunInstance = (RunFactory)tsTest.RunFactory; //var oRun = (Run)oRunInstance.AddItem("Performance Test"); //run.Status = "Passed"; //run.Post(); //run.Refresh(); var oTest = (Test)tsTest.Test; var tsDesignStepList = oTest.DesignStepFactory.NewList(""); var oStepFactory = (StepFactory)run.StepFactory; foreach (DesignStep oDesignStep in tsDesignStepList) { var oStep = (Step)oStepFactory.AddItem(oDesignStep.StepName); //oStep.Status = "Passed"; //oStep.Post(); } } } } tdConn.DisconnectProject(); tdConn.Disconnect(); } catch (Exception ex) { MessageBox.Show(ex.Message); MessageBox.Show(ex.StackTrace); } }
public void UploadResults(TestCase currentTestCase) { string testFolder = Convert.ToString(ExecutionSession.dictCommonData["QCFolder"]); string testSetName = currentTestCase.Category; TestSetFactory tsFactory = (TestSetFactory)qcConnect.TestSetFactory; TestSetTreeManager tsTreeMgr = (TestSetTreeManager)qcConnect.TestSetTreeManager; TestSetFolder tsFolder = (TestSetFolder)tsTreeMgr.get_NodeByPath(testFolder); List tsList = tsFolder.FindTestSets(testSetName, false, null); TestSet testSet = tsList[1]; tsFolder = (TestSetFolder)testSet.TestSetFolder; TSTestFactory tsTestFactory = (TSTestFactory)testSet.TSTestFactory; List tsTestList = tsTestFactory.NewList(""); // And finally, update each test case status: foreach (TSTest tsTest in tsTestList) { if (currentTestCase.TestCaseName == tsTest.Name.Remove(0, 3)) { RunFactory runFactory = (RunFactory)tsTest.RunFactory; List allfields = runFactory.Fields; String browserValue = tsTest["TC_USER_TEMPLATE_10"]; Run lastRun = (Run)tsTest.LastRun; string runName = runFactory.UniqueRunName; RunFactory objRunFactory = tsTest.RunFactory; Run theRun = objRunFactory.AddItem(runName); theRun.Name = runName; theRun.CopyDesignSteps(); StepFactory Step = theRun.StepFactory; List stepList = (List)Step.NewList(""); if (currentTestCase.OverAllResult == OverAllResult.PASS) { theRun.Status = "Passed"; } else { theRun.Status = "Failed"; } theRun.Post(); //Delete current attachment from QC test set test case AttachmentFactory objAttachmentFactory = tsTest.Attachments; var objCurrentAttachments = objAttachmentFactory.NewList(""); for (int objC = 1; objC <= objCurrentAttachments.Count; objC++) { try { objAttachmentFactory.RemoveItem(tsTest.Attachments.NewList("").Item(1).ID); } catch { } } IAttachment objAttachment = objAttachmentFactory.AddItem(DBNull.Value); objAttachment.FileName = currentTestCase.QCHTMLReportPath; objAttachment.Type = 1; objAttachment.Post(); string[] filePaths = System.IO.Directory.GetFiles(currentTestCase.QCScreenShotPath); foreach (string file in filePaths) { objAttachment = objAttachmentFactory.AddItem(DBNull.Value); objAttachment.FileName = file; objAttachment.Type = 1; objAttachment.Post(); } break; } } }
public void UploadResults(TB2.TestCase currentTestCase) { string testFolder = @"Root\WCS 7up Core - 5022\zz Automation\PracticeExecution\Temp_Prashant\QA72_7_31"; string testSetName = currentTestCase.Category; TestSetFactory tsFactory = (TestSetFactory)qcConnect.TestSetFactory; TestSetTreeManager tsTreeMgr = (TestSetTreeManager)qcConnect.TestSetTreeManager; TestSetFolder tsFolder = (TestSetFolder)tsTreeMgr.get_NodeByPath(testFolder); List tsList = tsFolder.FindTestSets(testSetName, false, null); TestSet testSet = tsList[1]; //foreach (TestSet testSet in tsList) //{ tsFolder = (TestSetFolder)testSet.TestSetFolder; TSTestFactory tsTestFactory = (TSTestFactory)testSet.TSTestFactory; List tsTestList = tsTestFactory.NewList(""); // And finally, update each test case status: foreach (TSTest tsTest in tsTestList) { //System.Console.Out.WriteLine("Test Case ID: " + tsTest.ID + ", Test Case Name: " + tsTest.Name + "\n"); if (currentTestCase.TestCaseName == tsTest.Name.Remove(0, 3)) { RunFactory runFactory = (RunFactory)tsTest.RunFactory; List allfields = runFactory.Fields; String browserValue = tsTest["TC_USER_TEMPLATE_10"]; // Console.WriteLine("Browser value : " + browserValue); Run lastRun = (Run)tsTest.LastRun; string runName = runFactory.UniqueRunName; RunFactory objRunFactory = tsTest.RunFactory; Run theRun = objRunFactory.AddItem(runName); theRun.Name = runName; //Get the count of test steps and compare it with the number of steps that were actually executed //and define the Execution status accordinagly theRun.CopyDesignSteps(); StepFactory Step = theRun.StepFactory; List stepList = (List)Step.NewList(""); if (currentTestCase.OverAllResult == OverAllResult.PASS) { theRun.Status = "Passed"; } else { theRun.Status = "Failed"; } theRun.Post(); //Delete current attachment from QC test set test case AttachmentFactory objAttachmentFactory = tsTest.Attachments; objSkipExec: var objCurrentAttachments = objAttachmentFactory.NewList(""); for (int objC = 1; objC <= objCurrentAttachments.Count; objC++) { try { objAttachmentFactory.RemoveItem(tsTest.Attachments.NewList("").Item(1).ID); } catch { } } if (objAttachmentFactory.NewList("").Count > 0) { goto objSkipExec; } IAttachment objAttachment = objAttachmentFactory.AddItem(DBNull.Value); objAttachment.FileName = currentTestCase.HTMLReportPath; objAttachment.Type = 1; objAttachment.Post(); string[] filePaths = System.IO.Directory.GetFiles(currentTestCase.ScreenShotPath); foreach (string file in filePaths) { objAttachment = objAttachmentFactory.AddItem(DBNull.Value); objAttachment.FileName = file; objAttachment.Type = 1; objAttachment.Post(); } break; // } } } }