How to use EventLogDataCollector method of Microsoft.TestPlatform.Extensions.EventLogCollector.EventLogDataCollector class

Best Vstest code snippet using Microsoft.TestPlatform.Extensions.EventLogCollector.EventLogDataCollector.EventLogDataCollector

EventLogDataCollectorTests.cs

Source:EventLogDataCollectorTests.cs Github

copy

Full Screen

...13 using Microsoft.VisualStudio.TestPlatform.Utilities.Helpers.Interfaces;14 using Microsoft.VisualStudio.TestTools.UnitTesting;15 using Moq;16 [TestClass]17 public class EventLogDataCollectorTests18 {19 private const string ConfigurationString =20 @"<Configuration><Setting name=""key"" value=""value"" /></Configuration>";21 private Mock<DataCollectionEvents> mockDataCollectionEvents;22 private TestableDataCollectionSink mockDataCollectionSink;23 private Mock<DataCollectionLogger> mockDataCollectionLogger;24 private DataCollectionEnvironmentContext dataCollectionEnvironmentContext;25 private EventLogDataCollector eventLogDataCollector;26 private Mock<IFileHelper> mockFileHelper;27 public EventLogDataCollectorTests()28 {29 this.mockDataCollectionEvents = new Mock<DataCollectionEvents>();30 this.mockDataCollectionSink = new TestableDataCollectionSink();31 this.mockFileHelper = new Mock<IFileHelper>();32 TestCase tc = new TestCase();33 DataCollectionContext dataCollectionContext =34 new DataCollectionContext(new SessionId(Guid.NewGuid()));35 this.dataCollectionEnvironmentContext = new DataCollectionEnvironmentContext(dataCollectionContext);36 this.mockDataCollectionLogger = new Mock<DataCollectionLogger>();37 this.eventLogDataCollector = new EventLogDataCollector(this.mockFileHelper.Object);38 }39 [TestMethod]40 public void InitializeShouldThrowExceptionIfEventsIsNull()41 {42 Assert.ThrowsException<ArgumentNullException>(43 () =>44 {45 this.eventLogDataCollector.Initialize(46 null,47 null,48 this.mockDataCollectionSink,49 this.mockDataCollectionLogger.Object,50 this.dataCollectionEnvironmentContext);51 });52 }53 [TestMethod]54 public void InitializeShouldThrowExceptionIfCollectionSinkIsNull()55 {56 Assert.ThrowsException<ArgumentNullException>(57 () =>58 {59 this.eventLogDataCollector.Initialize(60 null,61 this.mockDataCollectionEvents.Object,62 null,63 this.mockDataCollectionLogger.Object,64 this.dataCollectionEnvironmentContext);65 });66 }67 [TestMethod]68 public void InitializeShouldThrowExceptionIfLoggerIsNull()69 {70 Assert.ThrowsException<ArgumentNullException>(71 () =>72 {73 this.eventLogDataCollector.Initialize(74 null,75 this.mockDataCollectionEvents.Object,76 this.mockDataCollectionSink,77 null,78 this.dataCollectionEnvironmentContext);79 });80 }81 [TestMethod]82 public void InitializeShouldInitializeDefaultEventLogNames()83 {84 List<string> eventLogNames = new List<string>();85 eventLogNames.Add("System");86 eventLogNames.Add("Security");87 eventLogNames.Add("Application");88 this.eventLogDataCollector.Initialize(null, this.mockDataCollectionEvents.Object, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);89 CollectionAssert.AreEqual(eventLogNames, this.eventLogDataCollector.EventLogNames.ToList());90 }91 [TestMethod]92 public void InitializeShouldInitializeCustomEventLogNamesIfSpecifiedInConfiguration()93 {94 string configurationString =95 @"<Configuration><Setting name=""EventLogs"" value=""MyEventName,MyEventName2"" /></Configuration>";96 List<string> eventLogNames = new List<string>();97 eventLogNames.Add("MyEventName");98 eventLogNames.Add("MyEventName2");99 XmlDocument expectedXmlDoc = new XmlDocument();100 expectedXmlDoc.LoadXml(configurationString);101 this.eventLogDataCollector.Initialize(expectedXmlDoc.DocumentElement, this.mockDataCollectionEvents.Object, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);102 CollectionAssert.AreEqual(eventLogNames, this.eventLogDataCollector.EventLogNames.ToList());103 }104 [TestMethod]105 public void InitializeShouldInitializeDefaultLogEntryTypes()106 {107 List<EventLogEntryType> entryTypes = new List<EventLogEntryType>();108 entryTypes.Add(EventLogEntryType.Error);109 entryTypes.Add(EventLogEntryType.Warning);110 entryTypes.Add(EventLogEntryType.FailureAudit);111 this.eventLogDataCollector.Initialize(null, this.mockDataCollectionEvents.Object, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);112 CollectionAssert.AreEqual(entryTypes, this.eventLogDataCollector.EntryTypes.ToList());113 }114 [TestMethod]115 public void InitializeShouldInitializeEntryTypesIfSpecifiedInConfiguration()116 {117 string configurationString =118 @"<Configuration><Setting name=""EntryTypes"" value=""Error"" /></Configuration>";119 List<EventLogEntryType> entryTypes = new List<EventLogEntryType>();120 entryTypes.Add(EventLogEntryType.Error);121 XmlDocument expectedXmlDoc = new XmlDocument();122 expectedXmlDoc.LoadXml(configurationString);123 this.eventLogDataCollector.Initialize(expectedXmlDoc.DocumentElement, this.mockDataCollectionEvents.Object, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);124 CollectionAssert.AreEqual(entryTypes, this.eventLogDataCollector.EntryTypes.ToList());125 }126 [TestMethod]127 public void InitializeShouldInitializeEventSourcesIfSpecifiedInConfiguration()128 {129 string configurationString =130 @"<Configuration><Setting name=""EventSources"" value=""MyEventSource"" /></Configuration>";131 List<string> eventSources = new List<string>();132 eventSources.Add("MyEventSource");133 XmlDocument expectedXmlDoc = new XmlDocument();134 expectedXmlDoc.LoadXml(configurationString);135 this.eventLogDataCollector.Initialize(expectedXmlDoc.DocumentElement, this.mockDataCollectionEvents.Object, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);136 CollectionAssert.AreEqual(eventSources, this.eventLogDataCollector.EventSources.ToList());137 }138 [TestMethod]139 public void InitializeShouldNotInitializeEventSourcesByDefault()140 {141 this.eventLogDataCollector.Initialize(null, this.mockDataCollectionEvents.Object, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);142 Assert.IsNull(this.eventLogDataCollector.EventSources);143 }144 [TestMethod]145 public void InitializeShouldInitializeMaxEntriesIfSpecifiedInConfiguration()146 {147 string configurationString =148 @"<Configuration><Setting name=""MaxEventLogEntriesToCollect"" value=""20"" /></Configuration>";149 XmlDocument expectedXmlDoc = new XmlDocument();150 expectedXmlDoc.LoadXml(configurationString);151 this.eventLogDataCollector.Initialize(expectedXmlDoc.DocumentElement, this.mockDataCollectionEvents.Object, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);152 Assert.AreEqual(20, this.eventLogDataCollector.MaxEntries);153 }154 [TestMethod]155 public void InitializeShouldSetDefaultMaxEntries()156 {157 this.eventLogDataCollector.Initialize(null, this.mockDataCollectionEvents.Object, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);158 Assert.AreEqual(50000, this.eventLogDataCollector.MaxEntries);159 }160 [TestMethod]161 public void InitializeShouldSubscribeToDataCollectionEvents()162 {163 var testableDataCollectionEvents = new TestableDataCollectionEvents();164 this.eventLogDataCollector.Initialize(null, testableDataCollectionEvents, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);165 Assert.AreEqual(1, testableDataCollectionEvents.GetTestCaseStartInvocationList().Length);166 Assert.AreEqual(1, testableDataCollectionEvents.GetTestCaseEndInvocationList().Length);167 Assert.AreEqual(1, testableDataCollectionEvents.GetTestSessionEndInvocationList().Length);168 Assert.AreEqual(1, testableDataCollectionEvents.GetTestSessionStartInvocationList().Length);169 }170 [TestMethod]171 public void TestSessionStartEventShouldCreateEventLogContainer()172 {173 var eventLogDataCollector = new EventLogDataCollector();174 Assert.AreEqual(eventLogDataCollector.ContextMap.Count, 0);175 eventLogDataCollector.Initialize(null, this.mockDataCollectionEvents.Object, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);176 this.mockDataCollectionEvents.Raise(x => x.SessionStart += null, new SessionStartEventArgs());177 Assert.AreEqual(eventLogDataCollector.ContextMap.Count, 1);178 }179 [TestMethod]180 public void TestCaseStartEventShouldCreateEventLogContainer()181 {182 var eventLogDataCollector = new EventLogDataCollector();183 Assert.AreEqual(eventLogDataCollector.ContextMap.Count, 0);184 eventLogDataCollector.Initialize(null, this.mockDataCollectionEvents.Object, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);185 this.mockDataCollectionEvents.Raise(x => x.TestCaseStart += null, new TestCaseStartEventArgs(new DataCollectionContext(new SessionId(Guid.NewGuid()), new TestExecId(Guid.NewGuid())), new TestCase()));186 Assert.AreEqual(eventLogDataCollector.ContextMap.Count, 1);187 }188 [TestMethod]189 public void TestCaseEndEventShouldWriteEventLogEntriesAndSendFile()190 {191 var eventLogDataCollector = new EventLogDataCollector();192 eventLogDataCollector.Initialize(null, this.mockDataCollectionEvents.Object, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);193 var tc = new TestCase();194 var context = new DataCollectionContext(new SessionId(Guid.NewGuid()), new TestExecId(Guid.NewGuid()));195 this.mockDataCollectionEvents.Raise(x => x.TestCaseStart += null, new TestCaseStartEventArgs(context, tc));196 this.mockDataCollectionEvents.Raise(x => x.TestCaseEnd += null, new TestCaseEndEventArgs(context, tc, TestOutcome.Passed));197 Assert.IsTrue(this.mockDataCollectionSink.IsSendFileAsyncInvoked);198 }199 public void TestCaseEndEventShouldInvokeSendFileAsync()200 {201 var eventLogDataCollector = new EventLogDataCollector();202 eventLogDataCollector.Initialize(null, this.mockDataCollectionEvents.Object, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);203 var tc = new TestCase();204 var context = new DataCollectionContext(new SessionId(Guid.NewGuid()), new TestExecId(Guid.NewGuid()));205 this.mockDataCollectionEvents.Raise(x => x.TestCaseStart += null, new TestCaseStartEventArgs(context, tc));206 this.mockDataCollectionEvents.Raise(x => x.TestCaseEnd += null, new TestCaseEndEventArgs(context, tc, TestOutcome.Passed));207 Assert.IsTrue(this.mockDataCollectionSink.IsSendFileAsyncInvoked);208 }209 [TestMethod]210 public void TestCaseEndEventShouldThrowIfTestCaseStartIsNotInvoked()211 {212 var eventLogDataCollector = new EventLogDataCollector();213 eventLogDataCollector.Initialize(null, this.mockDataCollectionEvents.Object, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);214 var tc = new TestCase();215 var context = new DataCollectionContext(new SessionId(Guid.NewGuid()), new TestExecId(Guid.NewGuid()));216 Assert.ThrowsException<EventLogCollectorException>(() =>217 {218 this.mockDataCollectionEvents.Raise(x => x.TestCaseEnd += null, new TestCaseEndEventArgs(context, tc, TestOutcome.Passed));219 });220 }221 public void SessionEndEventShouldThrowIfSessionStartEventtIsNotInvoked()222 {223 var eventLogDataCollector = new EventLogDataCollector();224 eventLogDataCollector.Initialize(null, this.mockDataCollectionEvents.Object, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);225 var tc = new TestCase();226 Assert.ThrowsException<EventLogCollectorException>(() =>227 {228 this.mockDataCollectionEvents.Raise(x => x.SessionEnd += null, new SessionEndEventArgs(this.dataCollectionEnvironmentContext.SessionDataCollectionContext));229 });230 }231 [TestMethod]232 public void TestSessionEndEventShouldWriteEventLogEntriesAndSendFile()233 {234 var eventLogDataCollector = new EventLogDataCollector();235 eventLogDataCollector.Initialize(null, this.mockDataCollectionEvents.Object, this.mockDataCollectionSink, this.mockDataCollectionLogger.Object, this.dataCollectionEnvironmentContext);236 var testcase = new TestCase() { Id = Guid.NewGuid() };237 this.mockDataCollectionEvents.Raise(x => x.SessionStart += null, new SessionStartEventArgs(this.dataCollectionEnvironmentContext.SessionDataCollectionContext));238 this.mockDataCollectionEvents.Raise(x => x.SessionEnd += null, new SessionEndEventArgs(this.dataCollectionEnvironmentContext.SessionDataCollectionContext));239 Assert.IsTrue(this.mockDataCollectionSink.IsSendFileAsyncInvoked);240 }241 [TestMethod]242 public void WriteEventLogsShouldCreateXmlFile()243 {244 string configurationString =245 @"<Configuration><Setting name=""MaxEventLogEntriesToCollect"" value=""20"" /><Setting name=""EventLog"" value=""Application"" /><Setting name=""EntryTypes"" value=""Warning"" /></Configuration>";246 XmlDocument expectedXmlDoc = new XmlDocument();247 expectedXmlDoc.LoadXml(configurationString);248 this.mockFileHelper.SetupSequence(x => x.Exists(It.IsAny<string>())).Returns(false).Returns(true);...

Full Screen

Full Screen

AssemblyInfo.cs

Source:AssemblyInfo.cs Github

copy

Full Screen

...17// COM, set the ComVisible attribute to true on that type.18[assembly: ComVisible(false)]19// The following GUID is for the ID of the typelib if this project is exposed to COM20[assembly: Guid("4c1f0d81-67a9-4bf3-a006-615ab4a7fcd6")]21[assembly: TestExtensionTypes(typeof(EventLogDataCollector))]...

Full Screen

Full Screen

EventLogDataCollector

Using AI Code Generation

copy

Full Screen

1using Microsoft.TestPlatform.Extensions.EventLogCollector;2using Microsoft.VisualStudio.TestPlatform.ObjectModel.DataCollection;3[DataCollectorFriendlyName("EventLogCollector")]4{5 private readonly EventLogCollector _eventLogCollector;6 public EventLogDataCollector()7 {8 _eventLogCollector = new EventLogCollector();9 }10 public override void Initialize(11 {12 _eventLogCollector.Initialize(configurationElement, environmentContext, events, dataSink, formatProvider, logger, context);13 }14 public override void SessionStarted()15 {16 _eventLogCollector.SessionStarted();17 }18 public override void SessionEnded()19 {20 _eventLogCollector.SessionEnded();21 }22 public override void TestCaseStarted(TestCase testCase)23 {24 _eventLogCollector.TestCaseStarted(testCase);25 }26 public override void TestCaseEnded(TestCase testCase, TestOutcome outcome)27 {28 _eventLogCollector.TestCaseEnded(testCase, outcome);29 }30 public override void TestSessionMessage(TestSessionMessageLevel level, string message)31 {32 _eventLogCollector.TestSessionMessage(level, message);33 }34}35using System;36using System.Collections.Generic;37using System.Diagnostics;38using System.Globalization;39using System.IO;40using System.Linq;41using System.Xml;42using Microsoft.VisualStudio.TestPlatform.ObjectModel;43using Microsoft.VisualStudio.TestPlatform.ObjectModel.DataCollection;44{45 {46 private const string LogFileName = "EventLogCollector";47 private const string LogFileExtension = ".log";48 private const string LogFileDateTimeFormat = "yyyy-MM-dd_HH-mm-ss-fff";49 private const string DataCollectorName = "EventLogCollector";50 private const string DataCollectorFriendlyName = "EventLogCollector";

Full Screen

Full Screen

EventLogDataCollector

Using AI Code Generation

copy

Full Screen

1using System.Diagnostics;2using Microsoft.TestPlatform.Extensions.EventLogCollector;3{4 {5 public void TestMethod()6 {7 EventLogDataCollector eventLogDataCollector = new EventLogDataCollector();8 eventLogDataCollector.GetEventLogData();9 }10 }11}12using System.Diagnostics;13using Microsoft.TestPlatform.Extensions.EventLogCollector;14{15 {16 public void TestMethod()17 {18 EventLogDataCollector eventLogDataCollector = new EventLogDataCollector();19 eventLogDataCollector.GetEventLogData();20 }21 }22}23using System.Diagnostics;24using Microsoft.TestPlatform.Extensions.EventLogCollector;25{26 {27 public void TestMethod()28 {29 EventLogDataCollector eventLogDataCollector = new EventLogDataCollector();30 eventLogDataCollector.GetEventLogData();31 }32 }33}34using System.Diagnostics;35using Microsoft.TestPlatform.Extensions.EventLogCollector;36{37 {38 public void TestMethod()39 {40 EventLogDataCollector eventLogDataCollector = new EventLogDataCollector();41 eventLogDataCollector.GetEventLogData();42 }43 }44}45using System.Diagnostics;46using Microsoft.TestPlatform.Extensions.EventLogCollector;47{48 {49 public void TestMethod()50 {51 EventLogDataCollector eventLogDataCollector = new EventLogDataCollector();52 eventLogDataCollector.GetEventLogData();53 }54 }55}56using System.Diagnostics;57using Microsoft.TestPlatform.Extensions.EventLogCollector;

Full Screen

Full Screen

EventLogDataCollector

Using AI Code Generation

copy

Full Screen

1using Microsoft.TestPlatform.Extensions.EventLogCollector;2using Microsoft.VisualStudio.TestTools.UnitTesting;3using System.Diagnostics;4{5 {6 public void TestMethod1()7 {8 EventLogDataCollector eventLogDataCollector = new EventLogDataCollector();9 eventLogDataCollector.EnableCollection("Application");10 eventLogDataCollector.DisableCollection("Application");11 }12 }13}14using Microsoft.TestPlatform.Extensions.EventLogCollector;15using Microsoft.VisualStudio.TestTools.UnitTesting;16using System.Diagnostics;17{18 {19 public void TestMethod1()20 {21 EventLogDataCollector eventLogDataCollector = new EventLogDataCollector();22 eventLogDataCollector.EnableCollection("Application");23 eventLogDataCollector.DisableCollection("Application");24 }25 }26}27using Microsoft.TestPlatform.Extensions.EventLogCollector;28using Microsoft.VisualStudio.TestTools.UnitTesting;29using System.Diagnostics;30{31 {32 public void TestMethod1()33 {34 EventLogDataCollector eventLogDataCollector = new EventLogDataCollector();35 eventLogDataCollector.EnableCollection("Application");36 eventLogDataCollector.DisableCollection("Application");37 }38 }39}40using Microsoft.TestPlatform.Extensions.EventLogCollector;41using Microsoft.VisualStudio.TestTools.UnitTesting;42using System.Diagnostics;43{44 {45 public void TestMethod1()46 {47 EventLogDataCollector eventLogDataCollector = new EventLogDataCollector();48 eventLogDataCollector.EnableCollection("Application");49 eventLogDataCollector.DisableCollection("Application");50 }51 }52}

Full Screen

Full Screen

EventLogDataCollector

Using AI Code Generation

copy

Full Screen

1using System;2using System.Collections.Generic;3using System.Linq;4using System.Text;5using System.Threading.Tasks;6using Microsoft.TestPlatform.Extensions.EventLogCollector;7using System.Xml;8{9 {10 static void Main(string[] args)11 {12 EventLogDataCollector eventLogDataCollector = new EventLogDataCollector();13 XmlDocument xmlDocument = new XmlDocument();14 xmlDocument.LoadXml("<Configuration><EventLogConfiguration><EventLogName>Application</EventLogName><EventLogName>System</EventLogName><EventLogName>Security</EventLogName><EventLogName>Setup</EventLogName><EventLogName>Application</EventLogName><EventLogName>System</EventLogName><EventLogName>Security</EventLogName><EventLogName>Setup</EventLogName></EventLogConfiguration></Configuration>");15 eventLogDataCollector.Initialize(xmlDocument);16 eventLogDataCollector.CollectData();17 }18 }19}20using System;21using System.Collections.Generic;22using System.Linq;23using System.Text;24using System.Threading.Tasks;25using Microsoft.TestPlatform.Extensions.EventLogCollector;26using System.Xml;27{28 {29 static void Main(string[] args)30 {31 EventLogCollector eventLogCollector = new EventLogCollector();32 XmlDocument xmlDocument = new XmlDocument();33 xmlDocument.LoadXml("<Configuration><EventLogConfiguration><EventLogName>Application</EventLogName><EventLogName>System</EventLogName><EventLogName>Security</EventLogName><EventLogName>Setup</EventLogName><EventLogName>Application</EventLogName><EventLogName>System</EventLogName><EventLogName>Security</EventLogName><EventLogName>Setup</EventLogName></EventLogConfiguration></Configuration>");34 eventLogCollector.Initialize(xmlDocument);35 eventLogCollector.CollectData();36 }37 }38}39using System;40using System.Collections.Generic;41using System.Linq;

Full Screen

Full Screen

EventLogDataCollector

Using AI Code Generation

copy

Full Screen

1using Microsoft.TestPlatform.Extensions.EventLogCollector;2EventLogCollector eventLogCollector = new EventLogCollector();3eventLogCollector.CollectEventLogData("Application", "System", "Security");4eventLogCollector.CollectEventLogData("Application", "System", "Security", "C:\\Logs\\TestLogs");5using Microsoft.TestPlatform.Extensions.EventLogCollector;6EventLogCollector eventLogCollector = new EventLogCollector();7eventLogCollector.CollectEventLogData("Application", "System", "Security", "C:\\Logs\\TestLogs");8using Microsoft.TestPlatform.Extensions.EventLogCollector;9EventLogCollector eventLogCollector = new EventLogCollector();10eventLogCollector.CollectEventLogData("Application", "System", "Security", "C:\\Logs\\TestLogs", "C:\\Logs\\TestLogs\\EventLogs\\EventLog_");11using Microsoft.TestPlatform.Extensions.EventLogCollector;12EventLogCollector eventLogCollector = new EventLogCollector();13eventLogCollector.CollectEventLogData("Application", "System", "Security", "C:\\Logs\\TestLogs", "C:\\Logs\\TestLogs\\EventLogs\\EventLog_", "C:\\Logs\\TestLogs\\EventLogs\\EventLog_");14using Microsoft.TestPlatform.Extensions.EventLogCollector;15EventLogCollector eventLogCollector = new EventLogCollector();16eventLogCollector.CollectEventLogData("Application", "System", "Security", "C:\\Logs\\TestLogs", "C:\\Logs\\TestLogs\\EventLogs

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful