public void Initialize(Microsoft.VisualStudio.TestTools.LoadTesting.LoadTest loadTest) { try { m_loadTest = loadTest; m_loadTest.TestStarting += new EventHandler <TestStartingEventArgs>(TestStarting); m_loadTest.TestSelected += new EventHandler <TestSelectedEventArgs>(TestSelected); m_loadTest.TestFinished += new EventHandler <TestFinishedEventArgs>(TestFinished); m_loadTest.LoadTestFinished += M_loadTest_LoadTestFinished; //Deserialize the Scenario Data List Xml into the C# class objScenarioDataList = CommonFunctions.GetScenarioDataListFromXML(); if (vsoTransactionContext.IsSaveTransactionInAzure) { //Fill the dictionary for maintaining the logins foreach (ScenarioDataListScenario scenario in objScenarioDataList.Scenarios) { objGenericScenario = new GenericScenario(); objGenericScenario.scenarioName = scenario.Name; objGenericScenario.scenarioUserMaxIterationCount = Convert.ToInt32(scenario.IterationCountPerLogin); objGenericScenario.throughputValue = Convert.ToDecimal(scenario.Throughput); GenericScenarioNameList.Add(scenario.Name, objGenericScenario); } vsoTransactionContext._agentID = m_loadTest.Context.AgentId; if (vsoTransactionContext._isInserted) { DBConnector dbconnect = new DBConnector(); LoadTestRun loadTestRun = new LoadTestRun(); loadTestRun.ControllerName = m_loadTest.Context.ControllerName; loadTestRun.CooldownTime = m_loadTest.RunSettings.WarmupTime; loadTestRun.Description = m_loadTest.RunSettings.Description; loadTestRun.IsLocalRun = m_loadTest.Context.AgentCount <= 0 ? true : false; loadTestRun.loadtestrunID = 0; loadTestRun.RunDuration = m_loadTest.RunSettings.RunDuration; loadTestRun.RunSettingUsed = ""; loadTestRun.StartTime = DateTime.Now; loadTestRun.WarmupTime = m_loadTest.RunSettings.WarmupTime; loadTestRun.LoadTestName = m_loadTest.RunSettings.Name; DBConnector dbconnctor = new DBConnector(); //vsoTransactionContext._isLoadtestTestFinished = false; TimeSpan TS = new TimeSpan(0, 1, 0); string query = "select top 1 LoadTestRunID from Twinfield.tbl_WKLoadTestRun with(tablockx) WHERE Description='" + m_loadTest.RunSettings.Description + "' AND StartTime BETWEEN '" + DateTime.Now.Subtract(new TimeSpan(0, 5, 0)) + "' AND '" + DateTime.Now.Add(new TimeSpan(0, 5, 0)) + "' "; for (int i = 0; i < m_loadTest.Scenarios.Count; i++) { LoadtestTestCase testcase = new LoadtestTestCase(); testcase.LoadTestRunId = vsoTransactionContext._loadtestRunID; testcase.TestCaseId = i; testcase.ScenarioId = i; testcase.TestType = "Loadtest"; testcase.TestCaseName = m_loadTest.Scenarios[i].TestNames.First().ToString(); vsoTransactionContext._loadtestTestCase.Add(m_loadTest.Scenarios[i].TestNames.First().ToString(), testcase); } var testcaselist = (from l in vsoTransactionContext._loadtestTestCase select l.Value).ToList(); dbconnctor.InsertLoadtestrunNtestCse(loadTestRun, testcaselist, query); vsoTransactionContext._isInserted = false; _autoSavedataTimer.Start(); //_autoSavedataTimer.Join(); } } } catch (Exception ex) { throw new Exception("Error In UserBasedPlugin in Initialize() during reading ScenarioDataList.xml, Exception : " + ex.Message); } }
public void Initialize(Microsoft.VisualStudio.TestTools.LoadTesting.LoadTest loadTest) { DynamicUserCountPlugin.loadTest = loadTest; task = Task.Factory.StartNew(HostService); DynamicUserCountPlugin.loadTest.Heartbeat += new EventHandler<HeartbeatEventArgs>(LoadTestHeartBeat); }