Exemple #1
0
    private string GetXml(ResultTaskCollection resultTaskCollection, ResultInfo resultInfo)
    {
        StringBuilder stringBuilder = new StringBuilder();

        stringBuilder.Append("<?xml version=\"1.0\" encoding=\"utf-8\" ?>");
        stringBuilder.Append(string.Format("<result runTime=\"{1}\" version=\"{0}\" executionTime=\"{2}\">", resultInfo.Version, GenericHelper.DateTimeToString(resultInfo.RunTime), resultInfo.TotalExecutionTime));

        AddServerInfoToXml(stringBuilder, resultInfo);
        AddTasksToXml(stringBuilder, resultTaskCollection);
        AddPerformanceCountersToXml(stringBuilder, resultTaskCollection.PerformanceCountersSamples, resultTaskCollection.PerformanceCountersSamplingInterval);

        stringBuilder.Append("</result>");
        return(stringBuilder.ToString());
    }
Exemple #2
0
    private void AddTasksToXml(StringBuilder stringBuilder, ResultTaskCollection resultTaskCollection)
    {
        stringBuilder.Append(string.Format("<tasks description=\"{0}\" connections=\"{1}\" timeBetweenConnections=\"{2}\" mode=\"{3}\" usePooling=\"{4}\" minPooling=\"{5}\" maxPooling=\"{6}\">", System.Security.SecurityElement.Escape(resultTaskCollection.Description), resultTaskCollection.Connections, resultTaskCollection.TimeBetweenConnections, resultTaskCollection.Mode, resultTaskCollection.UsePooling, resultTaskCollection.MinPooling, resultTaskCollection.MaxPooling));

        AddSummaryToXml(stringBuilder);

        foreach (ResultTask resultTask in resultTaskCollection.Tasks)
        {
            stringBuilder.Append(string.Format("<task name=\"{0}\" type=\"{1}\" description=\"{2}\" delayAfterCompletion=\"{3}\" firstConnectionStartTime=\"{4}\">", System.Security.SecurityElement.Escape(resultTask.Name), resultTask.Type, System.Security.SecurityElement.Escape(resultTask.Description), resultTask.DelayAfterCompletion, GenericHelper.DateTimeToString(resultTask.FirstConnectionStartTime)));
            AddTraceToXml(stringBuilder, resultTask);
            stringBuilder.Append("</task>");
        }

        stringBuilder.Append("</tasks>");
    }
Exemple #3
0
    public ImportResultXml(string resultXmlFileName)
    {
        _traceData = new List <ImportTraceDataValue>();
        _calculatedPerformanceCounters = new List <CalculatedPerformanceCounter>();
        _ranTaskInfo          = new List <RanTaskInfo>();
        _resultTaskCollection = new ResultTaskCollection();
        _resultInfo           = new ResultInfo();

        try
        {
            ParseXml(resultXmlFileName);
            _success = true;
        }
        catch
        {
            MessageBox.Show("Not a valid Result Xml file.", GenericHelper.ApplicationName, MessageBoxButtons.OK, MessageBoxIcon.Information);
            _success = false;
        }
    }
Exemple #4
0
    public void SetData(List <ImportTraceDataValue> traceDataList, List <CalculatedPerformanceCounter> performanceCounters, string unattendedTempDir, List <RanTaskInfo> ranTaskInfo, bool includeStylesheets, ResultTaskCollection resultTaskCollection, ResultInfo resultInfo)
    {
        Hide();
        InitializeComponent();
        Initialize(traceDataList, performanceCounters, ranTaskInfo, resultTaskCollection, resultInfo);

        if (includeStylesheets)
        {
            foreach (Stylesheet stylesheet in StylesheetHelper.StylesheetCollection.Stylesheets)
            {
                if (stylesheet.Enabled)
                {
                    string transformedXmlFileName = string.Format(@"{0}\PerformanceTestToolResultTransformed_{1}.{2}", unattendedTempDir, stylesheet.Name, stylesheet.OutputFormat.ToLower());
                    XslTransform(stylesheet.Xslt, _xmlFileName, transformedXmlFileName, stylesheet.OutputFormat);
                }
            }
        }

        string logDirAndFileName = string.Format(@"{0}\{1}", unattendedTempDir, GenericHelper.UnattendedLogFileName);

        XmlHelper.WriteXmlToFile(_xml, logDirAndFileName);
        Close();
    }
Exemple #5
0
    public void SetData(List <ImportTraceDataValue> traceDataList, List <CalculatedPerformanceCounter> performanceCounters, List <RanTaskInfo> ranTaskInfo, ResultTaskCollection resultTaskCollection, ResultInfo resultInfo)
    {
        Hide();
        InitializeComponent();
        Initialize(traceDataList, performanceCounters, ranTaskInfo, resultTaskCollection, resultInfo);
        PostInitializeSteps();

        FireMessageToMainFormEvent("Status: Idle");
    }
Exemple #6
0
    private static List <TabPage> GetTabPages(List <ImportTraceDataValue> traceDataList, ResultTaskCollection resultTaskCollection, List <RanTaskInfo> ranTaskInfo)
    {
        List <ImportTraceDataValue> latencyValues = GetLatencyValues(traceDataList, resultTaskCollection);

        List <TabPage> tabPages = new List <TabPage>();
        List <ImportTraceDataValue> summaryTraceDataList = GetSummaryOfTraceData(traceDataList);

        if (latencyValues != null)
        {
            AddTotalDuration(summaryTraceDataList, latencyValues);
        }

        TabPage summaryTabPage = GetSummaryTab(resultTaskCollection.Connections, summaryTraceDataList);

        tabPages.Add(summaryTabPage);

        for (int i = 0; i < resultTaskCollection.Tasks.Count; i++)
        {
            TabPage tabPage = GetTabPage(resultTaskCollection.Tasks[i], traceDataList, ranTaskInfo, resultTaskCollection.Connections);
            tabPages.Add(tabPage);
        }

        return(tabPages);
    }
Exemple #7
0
    private static List <ImportTraceDataValue> GetLatencyValues(List <ImportTraceDataValue> traceDataList, ResultTaskCollection resultTaskCollection)
    {
        if (resultTaskCollection.Mode == "Serial")
        {
            return(null);
        }

        string firstTaskName = null;

        foreach (ResultTask task in resultTaskCollection.Tasks)
        {
            if (task.Type == TaskHelper.TaskType.Normal)
            {
                firstTaskName = task.Name;
                break;
            }
        }

        List <ImportTraceDataValue> firstTaskLatencyValues = new List <ImportTraceDataValue>();

        long startTime = -1;

        for (int i = 0; i < traceDataList.Count; i++)
        {
            if (traceDataList[i].TaskName == firstTaskName)
            {
                if (traceDataList[i].ColumnName == "Start Time")
                {
                    startTime = traceDataList[i].Value;
                }

                if (startTime != -1)
                {
                    long totalDuration = startTime;
                    totalDuration = totalDuration - ((traceDataList[i].Connection - 1) * resultTaskCollection.TimeBetweenConnections);

                    firstTaskLatencyValues.Add(new ImportTraceDataValue(traceDataList[i].TaskName, "Total Duration", totalDuration, traceDataList[i].Connection));

                    startTime = -1;
                }
            }
        }

        return(firstTaskLatencyValues);
    }
Exemple #8
0
    private void Initialize(List <ImportTraceDataValue> traceDataList, List <CalculatedPerformanceCounter> performanceCounters, List <RanTaskInfo> ranTaskInfo, ResultTaskCollection resultTaskCollection, ResultInfo resultInfo)
    {
        FireMessageToMainFormEvent("Status: Parsing Results...");

        Text = string.Format("{0} - Results", GenericHelper.ApplicationName);
        GenericHelper.SetSize(this, ConfigHandler.ResultsWindowSize);
        MinimumSize = new Size(700, 500);          // error in .NET
        FillRecentFilesMenu();

        SearchHistoryHandler.LoadItems(objectNameComboBox, "RecentListObjectName");
        SearchHistoryHandler.LoadItems(counterNameComboBox, "RecentListCounterName");
        SearchHistoryHandler.LoadItems(instanceNameComboBox, "RecentListInstanceName");

        descriptionTextBox.GotFocus += DescriptionTextBox_GotFocus;
        shownTextBox.GotFocus       += ShownTextBox_GotFocus;

        ImageList imageList = new ImageList();

        imageList.Images.Add(PerformanceTestTool.Properties.Resources.cogtab);
        tabControlEX1.ImageList = imageList;

        tabControlEX1.TabPages.Clear();
        performanceCounterListView.Items.Clear();
        stylesheetComboBox.Items.Clear();

        _listViewColumnSorter = new ListViewColumnSorter();
        performanceCounterListView.ListViewItemSorter = _listViewColumnSorter;

        _performanceCounters = performanceCounters;

        ShowPerformanceCounterResults(performanceCounters, resultTaskCollection.PerformanceCountersSamples, resultTaskCollection.PerformanceCountersSamplingInterval);
        UpdateShownTextBox();

        List <TabPage> tabPages = GetTabPages(traceDataList, resultTaskCollection, ranTaskInfo);

        AddTabPages(tabPages);

        _splitterDistance = GetSplitterDistance();

        _xml = GetXml(resultTaskCollection, resultInfo);
        SetXmlFile();
        XmlHelper.WriteXmlToFile(_xml, _xmlFileName);
    }