diff --git a/.nuspec/Objectivity.Test.Automation.Features.nuspec b/.nuspec/Objectivity.Test.Automation.Features.nuspec index 34a934f56..2e1d0feb9 100644 --- a/.nuspec/Objectivity.Test.Automation.Features.nuspec +++ b/.nuspec/Objectivity.Test.Automation.Features.nuspec @@ -16,7 +16,7 @@ selenium webdriver testautomation tests specflow Objectivity.Test.Automation.Common template - + diff --git a/.nuspec/Objectivity.Test.Automation.Nunit.nuspec b/.nuspec/Objectivity.Test.Automation.Nunit.nuspec index 2bb414331..510d4cf29 100644 --- a/.nuspec/Objectivity.Test.Automation.Nunit.nuspec +++ b/.nuspec/Objectivity.Test.Automation.Nunit.nuspec @@ -15,14 +15,14 @@ Copyright 2015 selenium webdriver testautomation tests nunit Objectivity.Test.Automation.Common - - - + + + - - + + diff --git a/Objectivity.Test.Automation.Common.Documentation/Selenium.shfbproj b/Objectivity.Test.Automation.Common.Documentation/Selenium.shfbproj index 73e358cfd..05553343b 100644 --- a/Objectivity.Test.Automation.Common.Documentation/Selenium.shfbproj +++ b/Objectivity.Test.Automation.Common.Documentation/Selenium.shfbproj @@ -27,10 +27,10 @@ - - - - + + + + 100 OnlyWarningsAndErrors Website diff --git a/Objectivity.Test.Automation.Common/App.config b/Objectivity.Test.Automation.Common/App.config index 2c991d3f4..9962ee576 100644 --- a/Objectivity.Test.Automation.Common/App.config +++ b/Objectivity.Test.Automation.Common/App.config @@ -8,6 +8,7 @@
+
@@ -18,12 +19,10 @@ - - @@ -89,4 +88,7 @@ + + + diff --git a/Objectivity.Test.Automation.Common/BaseConfiguration.cs b/Objectivity.Test.Automation.Common/BaseConfiguration.cs index f4aaa2b3f..782917d31 100644 --- a/Objectivity.Test.Automation.Common/BaseConfiguration.cs +++ b/Objectivity.Test.Automation.Common/BaseConfiguration.cs @@ -200,17 +200,6 @@ public static string ChromePath } } - /// - /// Gets the PhantomJs path - /// - public static string PhantomJsPath - { - get - { - return ConfigurationManager.AppSettings["PhantomJsPath"]; - } - } - /// /// Gets the Remote Web Driver hub url /// diff --git a/Objectivity.Test.Automation.Common/BrowserType.cs b/Objectivity.Test.Automation.Common/BrowserType.cs index c2b4f4a04..088aed3b1 100644 --- a/Objectivity.Test.Automation.Common/BrowserType.cs +++ b/Objectivity.Test.Automation.Common/BrowserType.cs @@ -45,12 +45,7 @@ public enum BrowserType /// /// Chrome browser /// - Chrome, - - /// - /// PhantomJs browser - /// - PhantomJs, + Chrome, /// /// Safari browser diff --git a/Objectivity.Test.Automation.Common/DriverContext.cs b/Objectivity.Test.Automation.Common/DriverContext.cs index 6f4741e61..5346d66be 100644 --- a/Objectivity.Test.Automation.Common/DriverContext.cs +++ b/Objectivity.Test.Automation.Common/DriverContext.cs @@ -42,7 +42,6 @@ namespace Objectivity.Test.Automation.Common using OpenQA.Selenium.Edge; using OpenQA.Selenium.Firefox; using OpenQA.Selenium.IE; - using OpenQA.Selenium.PhantomJS; using OpenQA.Selenium.Remote; using OpenQA.Selenium.Safari; @@ -71,6 +70,11 @@ public class DriverContext /// public event EventHandler CapabilitiesSet; + /// + /// Gets instance of Performance PerformanceMeasures class + /// + public PerformanceHelper PerformanceMeasures { get; } = new PerformanceHelper(); + /// /// Gets or sets the test title. /// @@ -370,12 +374,37 @@ private InternetExplorerOptions InternetExplorerProfile { get { + // retrieving settings from config file + var internetExplorerPreferences = ConfigurationManager.GetSection("InternetExplorerPreferences") as NameValueCollection; var options = new InternetExplorerOptions { EnsureCleanSession = true, IgnoreZoomLevel = true, }; + // custom preferences + // if there are any settings + if (internetExplorerPreferences != null) + { + // loop through all of them + for (var i = 0; i < internetExplorerPreferences.Count; i++) + { + Logger.Trace(CultureInfo.CurrentCulture, "Set custom preference '{0},{1}'", internetExplorerPreferences.GetKey(i), internetExplorerPreferences[i]); + + // and verify all of them + switch (internetExplorerPreferences.GetKey(i)) + { + case "EnsureCleanSession": + options.EnsureCleanSession = Convert.ToBoolean(internetExplorerPreferences[i], CultureInfo.CurrentCulture); + break; + + case "IgnoreZoomLevel": + options.IgnoreZoomLevel = Convert.ToBoolean(internetExplorerPreferences[i], CultureInfo.CurrentCulture); + break; + } + } + } + // set browser proxy for IE if (!string.IsNullOrEmpty(BaseConfiguration.Proxy)) { @@ -483,9 +512,6 @@ public void Start() case BrowserType.Safari: this.driver = new SafariDriver(this.SafariProfile); break; - case BrowserType.PhantomJs: - this.driver = new PhantomJSDriver(this.CurrentDirectory + BaseConfiguration.PhantomJsPath); - break; case BrowserType.RemoteWebDriver: case BrowserType.BrowserStack: this.driver = new RemoteWebDriver(BaseConfiguration.RemoteWebDriverHub, this.SetCapabilities()); @@ -630,7 +656,18 @@ public bool LogJavaScriptErrors() if (BaseConfiguration.JavaScriptErrorLogging) { Logger.Debug(CultureInfo.CurrentCulture, "Checking JavaScript error(s) in browser"); - jsErrors = this.driver.Manage().Logs.GetLog(LogType.Browser).Where(x => BaseConfiguration.JavaScriptErrorTypes.Any(e => x.Message.Contains(e))); + try + { + jsErrors = + this.driver.Manage() + .Logs.GetLog(LogType.Browser) + .Where(x => BaseConfiguration.JavaScriptErrorTypes.Any(e => x.Message.Contains(e))); + } + catch (NullReferenceException) + { + Logger.Error(CultureInfo.CurrentCulture, "NullReferenceException while trying to read JavaScript errors from browser."); + return false; + } if (jsErrors.Any()) { diff --git a/Objectivity.Test.Automation.Common/Extensions/WebDriverExtensions.cs b/Objectivity.Test.Automation.Common/Extensions/WebDriverExtensions.cs index 1dae63a6e..de4240bc8 100644 --- a/Objectivity.Test.Automation.Common/Extensions/WebDriverExtensions.cs +++ b/Objectivity.Test.Automation.Common/Extensions/WebDriverExtensions.cs @@ -66,27 +66,6 @@ public static void NavigateTo(this IWebDriver webDriver, Uri url) ApproveCertificateForInternetExplorer(webDriver); } - /// - /// Navigates to given url and measure time for this action including or not Ajax. - /// - /// Sample confirmation for java script alert: - /// this.Driver.NavigateToAndMeasureTime("http://objectivity.co.uk", waitForAjax: true); - /// - /// The web driver. - /// The URL. - /// Wait or not for Ajax - public static void NavigateToAndMeasureTime(this IWebDriver webDriver, Uri url, bool waitForAjax) - { - PerformanceHelper.Instance.StartMeasure(); - webDriver.Navigate().GoToUrl(url); - if (waitForAjax) - { - webDriver.WaitForAjax(); - } - - PerformanceHelper.Instance.StopMeasure(url.AbsolutePath); - } - /// /// Waits for all ajax actions to be completed. /// diff --git a/Objectivity.Test.Automation.Common/Helpers/PerformanceHelper.cs b/Objectivity.Test.Automation.Common/Helpers/PerformanceHelper.cs index 34eee7656..b7d9445b4 100644 --- a/Objectivity.Test.Automation.Common/Helpers/PerformanceHelper.cs +++ b/Objectivity.Test.Automation.Common/Helpers/PerformanceHelper.cs @@ -27,9 +27,7 @@ namespace Objectivity.Test.Automation.Common.Helpers using System.Diagnostics; using System.Globalization; using System.Linq; - using NLog; - using Objectivity.Test.Automation.Common.Types; /// @@ -59,17 +57,35 @@ public PerformanceHelper() } /// - /// Gets or sets the performance manager. + /// Gets the scenario list /// - /// - /// The performance manager. - /// - public static PerformanceHelper Instance { get; set; } + public IList GetloadTimeList => this.loadTimeList; /// - /// Gets the scenario list + /// Gets all the durations milliseconds. /// - public IList GetloadTimeList => this.loadTimeList; + /// Return average load times for particular scenarios and browsers. + public IEnumerable AllGroupedDurationsMilliseconds + { + get + { + var groupedList = + this.loadTimeList.OrderBy(dur => dur.Duration).GroupBy( + st => new { st.Scenario, BName = st.BrowserName }, + (key, g) => + { + var savedTimeses = g as IList ?? g.ToList(); + return new AverageGroupedTimes + { + StepName = key.Scenario, + Browser = key.BName, + AverageDuration = Math.Round(savedTimeses.Average(dur => dur.Duration)), + Percentile90 = savedTimeses[(int)(Math.Ceiling(savedTimeses.Count * 0.9) - 1)].Duration + }; + }).ToList().OrderBy(listElement => listElement.StepName); + return groupedList; + } + } /// /// Gets or sets measured time. @@ -102,45 +118,5 @@ public void StopMeasure(string title) this.loadTimeList.Add(savedTimes); } - - /// - /// Prints the performance summary. - /// - /// TODO: Decide what parameters must be printed - public void PrintAveragePercentiles90DurationMilliseconds() - { - var groupedDurations = this.AllGroupedDurationsMilliseconds().Select(v => - "##teamcity[testStarted name='" + v.StepName + "." + v.Browser + ".Average']\n" + - "##teamcity[testFinished name='" + v.StepName + "." + v.Browser + ".Average' duration='" + v.AverageDuration + "']\n" + - "##teamcity[testStarted name='" + v.StepName + "." + v.Browser + ".Percentile90Line']\n" + - "##teamcity[testFinished name='" + v.StepName + "." + v.Browser + ".Percentile90Line' duration='" + v.Percentile90 + "']\n" + - v.StepName + " " + v.Browser + " Average: " + v.AverageDuration + "\n" + - v.StepName + " " + v.Browser + " Percentile90Line: " + v.Percentile90); - - groupedDurations.ToList().ForEach(Console.WriteLine); - } - - /// - /// All the durations milliseconds. - /// - /// Return average load times for particular scenarios and browsers. - private IEnumerable AllGroupedDurationsMilliseconds() - { - var groupedList = - this.loadTimeList.OrderBy(dur => dur.Duration).GroupBy( - st => new { st.Scenario, BName = st.BrowserName }, - (key, g) => - { - var savedTimeses = g as IList ?? g.ToList(); - return new AverageGroupedTimes - { - StepName = key.Scenario, - Browser = key.BName, - AverageDuration = Math.Round(savedTimeses.Average(dur => dur.Duration)), - Percentile90 = savedTimeses[(int)(Math.Ceiling(savedTimeses.Count * 0.9) - 1)].Duration - }; - }).ToList().OrderBy(listElement => listElement.StepName); - return groupedList; - } } } diff --git a/Objectivity.Test.Automation.Common/Helpers/PrintPerformanceResultsHelper.cs b/Objectivity.Test.Automation.Common/Helpers/PrintPerformanceResultsHelper.cs new file mode 100644 index 000000000..7b640c534 --- /dev/null +++ b/Objectivity.Test.Automation.Common/Helpers/PrintPerformanceResultsHelper.cs @@ -0,0 +1,138 @@ +// +// Copyright (c) Objectivity Bespoke Software Specialists. All rights reserved. +// +// +// The MIT License (MIT) +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. +// + +namespace Objectivity.Test.Automation.Common.Helpers +{ + using System.ComponentModel; + using System.Diagnostics; + using System.Linq; + using NLog; + + /// + /// Class which support displaying performance test results. More details on wiki + /// + public static class PrintPerformanceResultsHelper + { + private static readonly Logger Logger = LogManager.GetCurrentClassLogger(); + + /// + /// Prints the performance summary of percentiles 90 duration in millisecond in Teamcity. + /// + /// The instance of PerformanceHelper class. + public static void PrintPercentiles90DurationMillisecondsinTeamcity(PerformanceHelper measures) + { + var groupedPercentiles90Durations = measures.AllGroupedDurationsMilliseconds.Select(v => + "##teamcity[testStarted name='" + v.StepName + "." + v.Browser + ".Percentile90Line']\n" + + "##teamcity[testFinished name='" + v.StepName + "." + v.Browser + ".Percentile90Line' duration='" + v.Percentile90 + "']\n" + + v.StepName + " " + v.Browser + " Percentile90Line: " + v.Percentile90).ToList().OrderBy(listElement => listElement); + + for (int i = 0; i < groupedPercentiles90Durations.Count(); i++) + { + Logger.Info(groupedPercentiles90Durations.ElementAt(i)); + } + } + + /// + /// Prints the performance summary of average duration in millisecond in TeamCity. + /// + /// The instance of PerformanceHelper class. + public static void PrintAverageDurationMillisecondsInTeamcity(PerformanceHelper measures) + { + var groupedAverageDurations = measures.AllGroupedDurationsMilliseconds.Select(v => + "\n##teamcity[testStarted name='" + v.StepName + "." + v.Browser + ".Average']" + + "\n##teamcity[testFinished name='" + v.StepName + "." + v.Browser + ".Average' duration='" + v.AverageDuration + "']" + + "\n" + v.StepName + " " + v.Browser + " Average: " + v.AverageDuration + "\n").ToList().OrderBy(listElement => listElement); + + for (int i = 0; i < groupedAverageDurations.Count(); i++) + { + Logger.Info(groupedAverageDurations.ElementAt(i)); + } + } + + /// + /// Prints the performance summary of percentiles 90 duration in millisecond in AppVeyor. + /// + /// The instance of PerformanceHelper class. + public static void PrintPercentiles90DurationMillisecondsInAppVeyor(PerformanceHelper measures) + { + var groupedDurationsAppVeyor = measures.AllGroupedDurationsMilliseconds.Select(v => + v.StepName + "." + v.Browser + + ".Percentile90Line -Framework NUnit -Filename PerformanceResults -Outcome Passed -Duration " + v.Percentile90) + .ToList() + .OrderBy(listElement => listElement); + + PrintResultsInAppVeyor(groupedDurationsAppVeyor); + } + + /// + /// Prints the performance summary of average duration in millisecond in AppVeyor. + /// + /// The instance of PerformanceHelper class. + public static void PrintAverageDurationMillisecondsInAppVeyor(PerformanceHelper measures) + { + var groupedDurationsAppVeyor = measures.AllGroupedDurationsMilliseconds.Select(v => + v.StepName + "." + v.Browser + + ".Average -Framework NUnit -Filename PerformanceResults -Outcome Passed -Duration " + v.AverageDuration) + .ToList() + .OrderBy(listElement => listElement); + + PrintResultsInAppVeyor(groupedDurationsAppVeyor); + } + + /// + /// Prints test results in AppVeyor + /// + /// Average load times for particular scenarios and browsers + public static void PrintResultsInAppVeyor(IOrderedEnumerable measuresToPrint) + { + // Use ProcessStartInfo class + ProcessStartInfo startInfo = new ProcessStartInfo(); + + startInfo.CreateNoWindow = false; + startInfo.UseShellExecute = false; + startInfo.FileName = "appveyor"; + startInfo.WindowStyle = ProcessWindowStyle.Hidden; + for (int i = 0; i < measuresToPrint.Count(); i++) + { + startInfo.Arguments = "AddTest " + measuresToPrint.ElementAt(i); + + // Start the process with the info we specified. + // Call WaitForExit and then the using statement will close. + try + { + using (Process exeProcess = Process.Start(startInfo)) + { + if (exeProcess != null) + { + exeProcess.WaitForExit(); + } + } + } + catch (Win32Exception) + { + Logger.Info("AppVeyor app not found"); + break; + } + } + } + } +} diff --git a/Objectivity.Test.Automation.Common/Objectivity.Test.Automation.Common.csproj b/Objectivity.Test.Automation.Common/Objectivity.Test.Automation.Common.csproj index 5e761f01c..9661afecb 100644 --- a/Objectivity.Test.Automation.Common/Objectivity.Test.Automation.Common.csproj +++ b/Objectivity.Test.Automation.Common/Objectivity.Test.Automation.Common.csproj @@ -66,6 +66,7 @@ + @@ -125,12 +126,12 @@ - - ..\packages\Selenium.WebDriver.3.8.0\lib\net45\WebDriver.dll + + ..\packages\Selenium.WebDriver.3.11.0\lib\net45\WebDriver.dll True - - ..\packages\Selenium.Support.3.8.0\lib\net45\WebDriver.Support.dll + + ..\packages\Selenium.Support.3.11.0\lib\net45\WebDriver.Support.dll True @@ -176,11 +177,13 @@ This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - + + + - - + + + @@ -18,12 +19,10 @@ - - @@ -80,4 +79,7 @@ + + + diff --git a/Objectivity.Test.Automation.Tests.Angular/Objectivity.Test.Automation.Tests.Angular.csproj b/Objectivity.Test.Automation.Tests.Angular/Objectivity.Test.Automation.Tests.Angular.csproj index 26065fe12..79c9018d5 100644 --- a/Objectivity.Test.Automation.Tests.Angular/Objectivity.Test.Automation.Tests.Angular.csproj +++ b/Objectivity.Test.Automation.Tests.Angular/Objectivity.Test.Automation.Tests.Angular.csproj @@ -1,5 +1,6 @@  + Debug AnyCPU @@ -45,18 +46,18 @@ ..\packages\NLog.4.3.5\lib\net45\NLog.dll True - - ..\packages\NUnit.3.9.0\lib\net45\nunit.framework.dll + + ..\packages\NUnit.3.10.1\lib\net45\nunit.framework.dll True - - ..\packages\Selenium.WebDriver.3.8.0\lib\net45\WebDriver.dll + + ..\packages\Selenium.WebDriver.3.11.0\lib\net45\WebDriver.dll True - - ..\packages\Selenium.Support.3.8.0\lib\net45\WebDriver.Support.dll + + ..\packages\Selenium.Support.3.11.0\lib\net45\WebDriver.Support.dll True @@ -85,13 +86,6 @@ - - phantomjs.exe - PreserveNewest - - - PreserveNewest - @@ -127,13 +121,14 @@ This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - + + + + - - - + + + - - @@ -124,4 +123,7 @@ + + + diff --git a/Objectivity.Test.Automation.Tests.BrowserStackCrossBrowser/Objectivity.Test.Automation.Tests.BrowserStackCrossBrowser.csproj b/Objectivity.Test.Automation.Tests.BrowserStackCrossBrowser/Objectivity.Test.Automation.Tests.BrowserStackCrossBrowser.csproj index ea2f56cf5..74a3677cc 100644 --- a/Objectivity.Test.Automation.Tests.BrowserStackCrossBrowser/Objectivity.Test.Automation.Tests.BrowserStackCrossBrowser.csproj +++ b/Objectivity.Test.Automation.Tests.BrowserStackCrossBrowser/Objectivity.Test.Automation.Tests.BrowserStackCrossBrowser.csproj @@ -1,5 +1,6 @@  + Debug @@ -58,8 +59,8 @@ ..\packages\NLog.4.3.5\lib\net45\NLog.dll True - - ..\packages\NUnit.3.9.0\lib\net45\nunit.framework.dll + + ..\packages\NUnit.3.10.1\lib\net45\nunit.framework.dll True @@ -70,7 +71,10 @@ - + + ..\packages\Selenium.WebDriver.3.11.0\lib\net45\WebDriver.dll + True + @@ -116,6 +120,7 @@ This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + - - @@ -93,6 +92,9 @@ + + + diff --git a/Objectivity.Test.Automation.Tests.Features/Objectivity.Test.Automation.Tests.Features.csproj b/Objectivity.Test.Automation.Tests.Features/Objectivity.Test.Automation.Tests.Features.csproj index 2266dc5b2..a6e714e66 100644 --- a/Objectivity.Test.Automation.Tests.Features/Objectivity.Test.Automation.Tests.Features.csproj +++ b/Objectivity.Test.Automation.Tests.Features/Objectivity.Test.Automation.Tests.Features.csproj @@ -129,11 +129,11 @@ - + - + @@ -20,11 +21,9 @@ - - @@ -84,4 +83,7 @@ + + + diff --git a/Objectivity.Test.Automation.Tests.MsTest/Objectivity.Test.Automation.Tests.MsTest.csproj b/Objectivity.Test.Automation.Tests.MsTest/Objectivity.Test.Automation.Tests.MsTest.csproj index ae746916e..d96bb71cb 100644 --- a/Objectivity.Test.Automation.Tests.MsTest/Objectivity.Test.Automation.Tests.MsTest.csproj +++ b/Objectivity.Test.Automation.Tests.MsTest/Objectivity.Test.Automation.Tests.MsTest.csproj @@ -67,8 +67,8 @@ - - ..\packages\Selenium.WebDriver.3.8.0\lib\net45\WebDriver.dll + + ..\packages\Selenium.WebDriver.3.11.0\lib\net45\WebDriver.dll True @@ -140,13 +140,13 @@ This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - + + + - - - + + + @@ -18,12 +19,10 @@ - - - + @@ -87,4 +86,7 @@ + + + diff --git a/Objectivity.Test.Automation.Tests.NUnit/DataDriven/DataDrivenHelper.cs b/Objectivity.Test.Automation.Tests.NUnit/DataDriven/DataDrivenHelper.cs index a1061d02a..e47b2b4b3 100644 --- a/Objectivity.Test.Automation.Tests.NUnit/DataDriven/DataDrivenHelper.cs +++ b/Objectivity.Test.Automation.Tests.NUnit/DataDriven/DataDrivenHelper.cs @@ -155,10 +155,9 @@ public static IEnumerable ReadDataDriveFileCsv(string file, string { throw new DataDrivenReadException( string.Format( - " Exception while reading Excel Data Driven file\n searched key '{0}' not found at sheet '{1}' \n for test {2} in file '{3}' at row {4}", + " Exception while reading Csv Data Driven file\n searched key '{0}' not found \n for test {1} in file '{2}' at row {3}", e.Message, testName, - testName, file, row)); } diff --git a/Objectivity.Test.Automation.Tests.NUnit/Objectivity.Test.Automation.Tests.NUnit.csproj b/Objectivity.Test.Automation.Tests.NUnit/Objectivity.Test.Automation.Tests.NUnit.csproj index 4b74ce28b..d77b646a8 100644 --- a/Objectivity.Test.Automation.Tests.NUnit/Objectivity.Test.Automation.Tests.NUnit.csproj +++ b/Objectivity.Test.Automation.Tests.NUnit/Objectivity.Test.Automation.Tests.NUnit.csproj @@ -1,5 +1,6 @@  + Debug @@ -78,8 +79,8 @@ ..\packages\NPOI.2.3.0\lib\net40\NPOI.OpenXmlFormats.dll True - - ..\packages\NUnit.3.9.0\lib\net45\nunit.framework.dll + + ..\packages\NUnit.3.10.1\lib\net45\nunit.framework.dll True @@ -90,8 +91,9 @@ - - ..\packages\Selenium.WebDriver.3.8.0\lib\net45\WebDriver.dll + + ..\packages\Selenium.WebDriver.3.11.0\lib\net45\WebDriver.dll + True @@ -107,6 +109,7 @@ + @@ -171,13 +174,14 @@ This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - + + + + - - - + + + @@ -18,13 +19,11 @@ - - @@ -83,4 +82,7 @@ + + + diff --git a/Objectivity.Test.Automation.Tests.Xunit/TestFixture.cs b/Objectivity.Test.Automation.Tests.Xunit/TestFixture.cs index 962ca2ebf..089d9bfc3 100644 --- a/Objectivity.Test.Automation.Tests.Xunit/TestFixture.cs +++ b/Objectivity.Test.Automation.Tests.Xunit/TestFixture.cs @@ -39,7 +39,6 @@ public class TestFixture : TestBase, IDisposable /// public TestFixture() { - StartPerformanceMeasure(); } public bool Disposed @@ -70,7 +69,6 @@ protected virtual void Dispose(bool disposing) { if (disposing) { - StopPerfromanceMeasure(); } this.disposed = true; diff --git a/Objectivity.Test.Automation.UnitTests/App.config b/Objectivity.Test.Automation.UnitTests/App.config index 478a379b2..9e72a534a 100644 --- a/Objectivity.Test.Automation.UnitTests/App.config +++ b/Objectivity.Test.Automation.UnitTests/App.config @@ -8,6 +8,7 @@
+
@@ -23,7 +24,6 @@ - @@ -83,4 +83,7 @@ + + + diff --git a/Objectivity.Test.Automation.UnitTests/Objectivity.Test.Automation.UnitTests.csproj b/Objectivity.Test.Automation.UnitTests/Objectivity.Test.Automation.UnitTests.csproj index 1ece0b614..07c2d62d7 100644 --- a/Objectivity.Test.Automation.UnitTests/Objectivity.Test.Automation.UnitTests.csproj +++ b/Objectivity.Test.Automation.UnitTests/Objectivity.Test.Automation.UnitTests.csproj @@ -1,5 +1,6 @@  + Debug AnyCPU @@ -37,13 +38,13 @@ 4 - - ..\packages\NUnit.3.9.0\lib\net45\nunit.framework.dll + + ..\packages\NUnit.3.10.1\lib\net45\nunit.framework.dll True - ..\packages\Selenium.WebDriver.3.8.0\lib\net40\WebDriver.dll + ..\packages\Selenium.WebDriver.3.11.0\lib\net40\WebDriver.dll @@ -101,15 +102,16 @@ - This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - + + + + - - + + + \ No newline at end of file diff --git a/Objectivity.Test.Automation.UnitTests/ProjectTestBase.cs b/Objectivity.Test.Automation.UnitTests/ProjectTestBase.cs index 2101689e8..1e2e113fe 100644 --- a/Objectivity.Test.Automation.UnitTests/ProjectTestBase.cs +++ b/Objectivity.Test.Automation.UnitTests/ProjectTestBase.cs @@ -68,7 +68,6 @@ protected DriverContext DriverContext public void BeforeClass() { this.DriverContext.CurrentDirectory = TestContext.CurrentContext.TestDirectory; - StartPerformanceMeasure(); this.DriverContext.Start(); } @@ -78,7 +77,6 @@ public void BeforeClass() [OneTimeTearDown] public void AfterClass() { - StopPerfromanceMeasure(); this.DriverContext.Stop(); } diff --git a/Objectivity.Test.Automation.UnitTests/packages.config b/Objectivity.Test.Automation.UnitTests/packages.config index fa3d4f008..27487fd58 100644 --- a/Objectivity.Test.Automation.UnitTests/packages.config +++ b/Objectivity.Test.Automation.UnitTests/packages.config @@ -1,7 +1,7 @@  - - - - + + + + \ No newline at end of file diff --git a/appveyor.yml b/appveyor.yml index 7434bbc8f..6c44854ed 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -32,7 +32,7 @@ assembly_info: environment: APPVEYOR_RDP_PASSWORD: secure: 3OiDAcFLoSt3UCnmEU+XgM2d541PAqCNJAPqoiRqwRI= - frameworkVersion: 3.1.1 + frameworkVersion: 3.1.2 GithubAuthToken: secure: x9uTnOFLUnZ6DiVhpBBxIJxij33Sz9uAIe+qef6M3sj9+J/AUmpfBmiGgqRabTqs COVERALLS_REPO_TOKEN: @@ -226,8 +226,7 @@ test_script: & $coveralls --opencover -i opencoverCoverage.xml --repoToken $env:COVERALLS_REPO_TOKEN --useRelativePaths --commitId $env:APPVEYOR_REPO_COMMIT --commitBranch $env:APPVEYOR_REPO_BRANCH --commitAuthor $env:APPVEYOR_REPO_COMMIT_AUTHOR --commitEmail $env:APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL --commitMessage $env:APPVEYOR_REPO_COMMIT_MESSAGE --jobId $env:APPVEYOR_BUILD_NUMBER --serviceName appveyor - - appveyor PushArtifact opencoverCoverage.xml + 7z a testresults_$env:appveyor_build_version.zip opencoverCoverage.xml echo '********************************************Uploading test results artifact********************************************'