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********************************************'