/// <summary>
        /// Loads the test config.
        /// </summary>
        /// <param name="codeCoverageConfigNode">The code coverage config node.</param>
        private void LoadTestConfig(XPathNavigator codeCoverageConfigNode)
        {
            XPathNavigator testConfigurationNode = codeCoverageConfigNode.SelectSingleNode("testConfiguration");

            if (testConfigurationNode == null)
            {
                return;
            }

            NoResults = testConfigurationNode.GetAttributeAsBool("noResults", false);

            XPathNavigator testDetailsNode = testConfigurationNode.SelectSingleNode("testDetails");

            if (testDetailsNode != null)
            {
                XPathNodeIterator testDetailNodes = testDetailsNode.SelectChildren("testDetail", string.Empty);
                foreach (XPathNavigator testDetailNode in testDetailNodes)
                {
                    string detail = testDetailNode.GetAttribute("detail", string.Empty);
                    if (!string.IsNullOrEmpty(detail))
                    {
                        details.Add(detail);
                    }
                }
            }
        }
        /// <summary>
        /// Loads the results config.
        /// </summary>
        /// <param name="codeCoverageConfigNode">The code coverage config node.</param>
        private void LoadResultsConfig(XPathNavigator codeCoverageConfigNode)
        {
            XPathNavigator resultsNode = codeCoverageConfigNode.SelectSingleNode("results");

            if (resultsNode == null)
            {
                return;
            }

            string resultsPath = ResolveRelativePath(resultsNode.GetAttribute("resultsRootPath", string.Empty));

            if (string.IsNullOrEmpty(resultsPath))
            {
                throw new InvalidDataException("The codeCoverageConfigNode/@resultsRootPath attribute was not specified.");
            }

            KeepHistory = resultsNode.GetAttributeAsBool("keepHistory", false);

            TempPath = Path.Combine(resultsPath, "Tempfiles");

            ResultsPath = resultsPath;
        }