public void SolutionActivitiesLazyLoadTest_NotLoaded() { //Arrange WorkSpace.Instance.OpenSolution(Path.Combine(TestResources.GetTestResourcesFolder(@"Solutions"), "BasicSimple")); SolutionRepository SR = WorkSpace.Instance.SolutionRepository; //Act ObservableList <BusinessFlow> bfs = SR.GetAllRepositoryItems <BusinessFlow>(); //Assert Assert.AreEqual(bfs.Count, 1, "Validating Bfs were loaded"); Assert.AreEqual(bfs[0].ActivitiesLazyLoad, true, "Validating Bf Activities were not loaded"); }
public void RunsetRunnersLazyLoadTest_NotLoaded() { //Arrange WorkSpace.Instance.OpenSolution(Path.Combine(TestResources.GetTestResourcesFolder(@"Solutions"), "BasicSimple")); SolutionRepository SR = WorkSpace.Instance.SolutionRepository; //Act ObservableList <RunSetConfig> runSetConfigs = SR.GetAllRepositoryItems <RunSetConfig>(); //Assert Assert.AreEqual(runSetConfigs.Count, 1, "Validating run sets were loaded"); Assert.AreEqual(runSetConfigs[0].GingerRunnersLazyLoad, true, "Validating run set runners were not loaded"); }
public void AddPluginPackage() { // Arrange PluginsManager mPlugInsManager = new PluginsManager(); string folder = TestResources.GetTestResourcesFolder(@"PluginPackages\GingerOfficePlugin"); //Act mPlugInsManager.AddPluginPackage(folder); ObservableList <StandAloneAction> list = mPlugInsManager.GetStandAloneActions(); //Assert Assert.AreEqual(5, list.Count, "There are 5 stand alone actions"); }
public static void ClassCleanup() { try { //Delete 'Report' folder which is crated after Dynamic Runset Execution System.IO.DirectoryInfo di = new DirectoryInfo(TestResources.GetTestResourcesFolder(@"Solutions" + Path.DirectorySeparatorChar + "BasicSimple" + Path.DirectorySeparatorChar + "Reports" + Path.DirectorySeparatorChar + "Reports")); di.Delete(true); } catch (Exception e) { Reporter.ToLog(eLogLevel.ERROR, e.Message); } }
public static void ClassInit(TestContext context) { mBF = new BusinessFlow(); mBF.Activities = new ObservableList <Activity>(); mBF.Name = "BF Test Fire Fox"; mBF.Active = true; Platform p = new Platform(); p.PlatformType = ePlatformType.Web; mBF.TargetApplications.Add(new TargetApplication() { AppName = "SCM" }); VariableString v1 = new VariableString() { Name = "v1", InitialStringValue = "1" }; mBF.AddVariable(v1); mGR = new GingerRunner(); mGR.CurrentSolution = new Ginger.SolutionGeneral.Solution(); Agent a = new Agent(); //a.DriverType = Agent.eDriverType.SeleniumFireFox;//have known firefox issues with selenium 3 a.DriverType = Agent.eDriverType.SeleniumChrome; mGR.SolutionAgents = new ObservableList <Agent>(); mGR.SolutionAgents.Add(a); // p2.Agent = a; mGR.ApplicationAgents.Add(new ApplicationAgent() { AppName = "SCM", Agent = a }); mGR.SolutionApplications = new ObservableList <ApplicationPlatform>(); mGR.SolutionApplications.Add(new ApplicationPlatform() { AppName = "SCM", Platform = ePlatformType.Web, Description = "New application" }); mGR.BusinessFlows.Add(mBF); string path = Path.Combine(TestResources.GetTestResourcesFolder(@"Solutions" + Path.DirectorySeparatorChar + "BasicSimple")); SR = GingerSolutionRepository.CreateGingerSolutionRepository(); SR.Open(path); }
public static void ClassInit(TestContext TC) { string sampleSolutionFolder = TestResources.GetTestResourcesFolder(@"Solutions\EnvsTest"); SolutionFolder = TestResources.GetTestTempFolder(@"Solutions\EnvsTest"); if (Directory.Exists(SolutionFolder)) { Directory.Delete(SolutionFolder, true); } CopyDir.Copy(sampleSolutionFolder, SolutionFolder); mGingerAutomator = GingerAutomator.StartSession(); mGingerAutomator.OpenSolution(SolutionFolder); }
public void SolutionPomElementsLazyLoadTest_NotLoaded() { //Arrange WorkSpace.Instance.OpenSolution(Path.Combine(TestResources.GetTestResourcesFolder(@"Solutions"), "BasicSimple")); SolutionRepository SR = WorkSpace.Instance.SolutionRepository; //Act ObservableList <ApplicationPOMModel> poms = SR.GetAllRepositoryItems <ApplicationPOMModel>(); //Assert Assert.AreEqual(poms.Count, 1, "Validating POMs were loaded"); Assert.AreEqual(poms[0].UnMappedUIElementsLazyLoad, true, "Validating POM Un Mappped Elements were not loaded"); Assert.AreEqual(poms[0].MappedUIElementsLazyLoad, true, "Validating POM Mappped Elements were not loaded"); }
public void RunsetRunnersLazyLoadTest_Loaded() { //Arrange WorkSpace.Instance.OpenSolution(Path.Combine(TestResources.GetTestResourcesFolder(@"Solutions"), "BasicSimple"), EncryptionHandler.GetDefaultKey()); SolutionRepository SR = WorkSpace.Instance.SolutionRepository; //Act ObservableList <RunSetConfig> runSetConfigs = SR.GetAllRepositoryItems <RunSetConfig>(); ObservableList <GingerRunner> runners = runSetConfigs[0].GingerRunners; //Assert Assert.AreEqual(runSetConfigs.Count, 1, "Validating run sets were loaded"); Assert.AreEqual(runSetConfigs[0].GingerRunnersLazyLoad, false, "Validating run set runners were loaded 1"); Assert.AreEqual(runners.Count, 1, "Validating run set runners were loaded 2"); }
public void BFVariablesLazyLoadTest_Loaded() { //Arrange WorkSpace.Instance.OpenSolution(Path.Combine(TestResources.GetTestResourcesFolder(@"Solutions"), "BasicSimple")); SolutionRepository SR = WorkSpace.Instance.SolutionRepository; //Act ObservableList <BusinessFlow> bfs = SR.GetAllRepositoryItems <BusinessFlow>(); ObservableList <VariableBase> variables = bfs[0].Variables; //Assert Assert.AreEqual(bfs.Count, 1, "Validating Bfs were loaded"); Assert.AreEqual(bfs[0].VariablesLazyLoad, false, "Validating Bf Variables were loaded 1"); Assert.AreEqual(variables.Count, 2, "Validating Bf Variables were loaded 2"); }
public void SolutionActivitiesLazyLoadTest_Loaded() { //Arrange WorkSpace.Instance.OpenSolution(Path.Combine(TestResources.GetTestResourcesFolder(@"Solutions"), "BasicSimple"), EncryptionHandler.GetDefaultKey()); SolutionRepository SR = WorkSpace.Instance.SolutionRepository; //Act ObservableList <BusinessFlow> bfs = SR.GetAllRepositoryItems <BusinessFlow>(); ObservableList <Activity> activities = bfs[0].Activities; //Assert Assert.AreEqual(bfs.Count, 1, "Validating Bfs were loaded"); Assert.AreEqual(bfs[0].ActivitiesLazyLoad, false, "Validating Bf Activities were loaded 1"); Assert.AreEqual(activities.Count, 1, "Validating Bf Activities were loaded 2"); }
public static void ClassInit(TestContext testContext) { //Arrange string name = "MyNewPOM"; string description = "MyDescription"; string sampleSolutionFolder = TestResources.GetTestResourcesFolder(@"Solutions\POMsTest"); string SolutionFolder = TestResources.GetTestTempFolder(@"Solutions\POMsTest"); if (Directory.Exists(SolutionFolder)) { Directory.Delete(SolutionFolder, true); } CopyDir.Copy(sampleSolutionFolder, SolutionFolder); GingerAutomator mGingerAutomator = GingerAutomator.StartSession(); mGingerAutomator.OpenSolution(SolutionFolder); mPOMsPOM = mGingerAutomator.MainWindowPOM.GotoPOMs(); Agent mChromeAgent = (from x in WorkSpace.Instance.SolutionRepository.GetAllRepositoryItems <Agent>() where x.Name == "ChromeAgent" select x).SingleOrDefault(); //Act prioritizedLocatorsList = new List <ElementLocator>() { new ElementLocator() { Active = false, LocateBy = eLocateBy.ByName }, new ElementLocator() { Active = true, LocateBy = eLocateBy.ByID }, new ElementLocator() { Active = false, LocateBy = eLocateBy.ByXPath }, new ElementLocator() { Active = true, LocateBy = eLocateBy.ByRelXPath } }; mLearnedPOM = mPOMsPOM.CreatePOM(name, description, "MyWebApp", mChromeAgent, @"HTML\HTMLControls.html", new List <eElementType>() { eElementType.HyperLink, eElementType.Table, eElementType.ListItem }, prioritizedLocatorsList); }
static void Prep() { // Create new solution mBusinessFlow = new BusinessFlow(); mBusinessFlow.Activities = new ObservableList <Activity>(); mBusinessFlow.Name = "MyDriver BF"; mBusinessFlow.Active = true; Platform p = new Platform(); p.PlatformType = ePlatformType.NA; mBusinessFlow.TargetApplications.Add(new TargetApplication() { AppName = mAppName }); mGingerRunner = new GingerRunner(); mGingerRunner.CurrentSolution = new Ginger.SolutionGeneral.Solution(); Agent agent = new Agent(); agent.AgentType = Agent.eAgentType.Service; mGingerRunner.SolutionAgents = new ObservableList <Agent>(); mGingerRunner.SolutionAgents.Add(agent); mGingerRunner.ApplicationAgents.Add(new ApplicationAgent() { AppName = mAppName, Agent = agent }); mGingerRunner.SolutionApplications = new ObservableList <ApplicationPlatform>(); mGingerRunner.SolutionApplications.Add(new ApplicationPlatform() { AppName = mAppName, Platform = ePlatformType.NA }); mGingerRunner.BusinessFlows.Add(mBusinessFlow); WorkspaceHelper.CreateWorkspaceWithTempSolution("sol1"); // Add the plugin to solution string pluginFolder = TestResources.GetTestResourcesFolder(@"Plugins" + Path.DirectorySeparatorChar + "PluginDriverExample4"); WorkSpace.Instance.PlugInsManager.Init(WorkSpace.Instance.SolutionRepository); WorkSpace.Instance.PlugInsManager.AddPluginPackage(pluginFolder); Console.WriteLine("LocalGingerGrid Status: " + WorkSpace.Instance.LocalGingerGrid.Status); }
public static void ClassInit(TestContext TC) { mTC = TC; string sampleSolutionFolder = TestResources.GetTestResourcesFolder(@"Solutions\BasicSimple"); SolutionFolder = TestResources.getGingerUnitTesterTempFolder(@"Solutions\VariablesTest"); if (Directory.Exists(SolutionFolder)) { Directory.Delete(SolutionFolder, true); } CopyDir.Copy(sampleSolutionFolder, SolutionFolder); mGingerAutomator = GingerAutomator.StartSession(); mGingerAutomator.OpenSolution(SolutionFolder); }
public static void ClassInit(TestContext TC) { mTC = TC; mGingerAutomator.StartGinger(); string sampleSolutionFolder = TestResources.GetTestResourcesFolder(@"Solutions\EnvsTest"); SolutionFolder = TestResources.getGingerUnitTesterTempFolder(@"Solutions\EnvsTest"); if (Directory.Exists(SolutionFolder)) { Directory.Delete(SolutionFolder, true); } CopyDir.Copy(sampleSolutionFolder, SolutionFolder); mGingerAutomator.OpenSolution(SolutionFolder); LogFile = mTC.TestLogsDir + @"\Ginger_BasicsTest.txt"; }
public void SolutionPomElementsLazyLoadTest_Loaded() { //Arrange WorkSpace.Instance.OpenSolution(Path.Combine(TestResources.GetTestResourcesFolder(@"Solutions"), "BasicSimple")); SolutionRepository SR = WorkSpace.Instance.SolutionRepository; //Act ObservableList <ApplicationPOMModel> poms = SR.GetAllRepositoryItems <ApplicationPOMModel>(); ObservableList <ElementInfo> unMapped = poms[0].UnMappedUIElements; ObservableList <ElementInfo> mapped = poms[0].MappedUIElements; //Assert Assert.AreEqual(poms.Count, 1, "Validating POMs were loaded"); Assert.AreEqual(poms[0].UnMappedUIElementsLazyLoad, false, "Validating POM Un Mappped Elements were loaded 1"); //Assert.AreEqual(unMapped.Count, 1, "Validating POM Un Mappped Elements were loaded 2"); //TODO: move HtmlElementInfo to .NET core project for enabeling this Assert Assert.AreEqual(poms[0].MappedUIElementsLazyLoad, false, "Validating POM Mappped Elements were not loaded 1"); //Assert.AreEqual(mapped.Count, 15, "Validating POM Mappped Elements were not loaded 2 "); //TODO: move HtmlElementInfo to .NET core project for enabeling this Assert }
private static void CreateTestSolution() { string sourceFolder = TestResources.GetTestResourcesFolder(@"Solutions\ReportSR"); solutionFolder = TestResources.GetTestTempFolder(@"Solutions\ReportSR"); if (Directory.Exists(solutionFolder)) { Directory.Delete(solutionFolder, true); } CopyDir.Copy(sourceFolder, solutionFolder); SolutionRepository SR = new SolutionRepository(); SR = Ginger.App.CreateGingerSolutionRepository(); SR.Open(solutionFolder); SR.Close(); }
public static void ClassInitialize(TestContext TestContext) { mTestHelper.ClassInitialize(TestContext); mTestHelper.Log("Creating temp solution"); // Init workspace string solutionFolder = TestResources.GetTempFolder("WebPlatformPluginTest"); WorkspaceHelper.CreateWorkspaceWithTempSolution(solutionFolder); // To debug SeleniumPlugin start the plugin from VS to register to LocalGrid string pluginFolder = TestResources.GetTestResourcesFolder("Plugins" + Path.DirectorySeparatorChar + "SeleniumPlugin"); WorkSpace.Instance.PlugInsManager.Init(WorkSpace.Instance.SolutionRepository); mTestHelper.Log("Adding SeleniumPlugin from: " + pluginFolder); WorkSpace.Instance.PlugInsManager.AddPluginPackage(pluginFolder); // Start Agent agent = new Agent(); agent.AgentType = Agent.eAgentType.Service; agent.PluginId = "SeleniumPlugin"; agent.ServiceId = "SeleniumChromeService"; mTestHelper.Log("StartDriver SeleniumPlugin SeleniumChromeService"); agent.AgentOperations.StartDriver(); GingerGrid GG = WorkSpace.Instance.LocalGingerGrid; Stopwatch stopwatch = Stopwatch.StartNew(); mTestHelper.Log("Waiting for node to connect"); while (GG.NodeList.Count == 0 && stopwatch.ElapsedMilliseconds < 10000) // wait max 10 seconds { mTestHelper.Log("GG.NodeList.Count == 0"); Thread.Sleep(100); } if (GG.NodeList.Count == 0) { throw new Exception("GG.NodeList.Count == 0"); } mTestHelper.Log("Done Waiting"); }
public void JavaFreeCommandOverrideXMLExecutionTest() { //Arrange TestNGExecuterService service = new TestNGExecuterService(); GingerAction GA = new GingerAction(); List <TestNGTestParameter> paramsToOveride = new List <TestNGTestParameter>(); paramsToOveride.Add(new TestNGTestParameter() { Name = "Num1", Value = "7" }); paramsToOveride.Add(new TestNGTestParameter() { Name = "Num2", Value = "4" }); bool parseReport = false; if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { parseReport = true; } //Act service.ExecuteJavaFreeCommand(GA, OverwriteJavaHomePath: null, JavaWorkingFolderPath: TestResources.GetTestResourcesFolder(@"JavaTestNG"), FreeCommandArguments: string.Format("java -cp \"{0}{1}{2}\" org.testng.TestNG \"{3}\"", Path.Combine(TestResources.GetTestResourcesFolder("JavaTestNG"), "bin"), General.GetOSFoldersSeperator(), Path.Combine(TestResources.GetTestResourcesFolder("JavaTestNG"), "Resources", "*"), Path.Combine(TestResources.GetTestResourcesFolder("JavaTestNG"), "src", "Calculator", "testng.xml")), TestngXmlPath: Path.Combine(TestResources.GetTestResourcesFolder("JavaTestNG"), "src", "Calculator", "testng.xml"), TestngXmlParametersToOverwrite: paramsToOveride, OverwriteOriginalTestngXml: false, ParseConsoleOutputs: true, FailActionDueToConsoleErrors: false, ParseTestngResultsXml: parseReport, OverwriteTestngResultsXmlDefaultFolderPath: Path.Combine(TestResources.GetTestResourcesFolder("JavaTestNG"), "test-output"), FailActionDueToTestngResultsXmlFailures: true); //Assert Assert.AreEqual((GA.Errors == null || GA.Errors.Count() == 0), true, "No Execution Errors validation"); Assert.AreEqual((GA.Output != null && GA.Output.OutputValues.Count > 0), true, "Execution Output values found validation"); Assert.AreEqual(General.OutputParamExist(GA, "Multipliy Result", "28"), true, "Console Multipliy Output captured validation"); Assert.AreEqual(General.OutputParamExist(GA, "Sum Result", "11"), true, "Console Sum Output captured validation"); if (parseReport) { Assert.AreEqual(General.OutputParamExist(GA, "Total Passed Test Methods", "2"), true, "TestNg Report XML Statistics Parsing validation"); Assert.AreEqual(General.OutputParamExist(GA, "CalculatorTests- Suite Start Time"), true, "TestNg Report XML Suite details Parsing validation"); Assert.AreEqual(General.OutputParamExist(GA, @"test1\testMoltiple-Test Status", "PASS"), true, "TestNg Report XML Test 1 Status Parsing validation"); Assert.AreEqual(General.OutputParamExist(GA, @"test1\testSum-Test Status", "PASS"), true, "TestNg Report XML Test 2 Status Parsing validation"); } }
public void GetURL_Testing() { ActBrowserElement act = new ActBrowserElement(); act.LocateBy = eLocateBy.ByName; act.ControlAction = ActBrowserElement.eControlAction.GetPageURL; act.AddNewReturnParams = true; act.Active = true; mBF.CurrentActivity.Acts.Add(act); mBF.CurrentActivity.Acts.CurrentItem = act; mGR.RunAction(act, false); Assert.AreEqual(act.Status, eRunStatus.Passed, "Action Status"); string actual = act.GetReturnParam("Actual"); string expected = @"file://" + TestResources.GetTestResourcesFolder("PBTestApp") + @"\Browser.html"; Assert.AreEqual(actual, expected, "True"); Assert.AreEqual(act.Error, null, "Act.Error"); }
public void SimpleMavenTestngXmlExecutionTest() { //Arrange TestNGExecuterService service = new TestNGExecuterService(); GingerAction GA = new GingerAction(); //Act service.ExecuteMavenProjectTestNGXML(GA, OverwriteMavenHomePath: null, MavenProjectFolderPath: TestResources.GetTestResourcesFolder(@"MavenTestNG"), PerformMavenInstall: true, TestngXmlPath: Path.Combine(TestResources.GetTestResourcesFolder("MavenTestNG"), "src", "main", "java", "com", "Calculator", "testng.xml"), TestngXmlParametersToOverwrite: null, OverwriteOriginalTestngXml: false, ParseConsoleOutputs: false, FailActionDueToConsoleErrors: false, ParseTestngResultsXml: true, OverwriteTestngResultsXmlDefaultFolderPath: null, FailActionDueToTestngResultsXmlFailures: true); //Assert Assert.AreEqual((GA.Errors == null || GA.Errors.Count() == 0), true, "No Execution Errors validation"); Assert.AreEqual((GA.Output != null && GA.Output.OutputValues.Count > 0), true, "Execution Output values found validation"); Assert.AreEqual(General.OutputParamExist(GA, "CalculatorTests- Suite Start Time"), true, "TestNg Report XML Suite details Parsing validation"); Assert.AreEqual(General.OutputParamExist(GA, @"test1\testMoltiple-Test Status", "PASS"), true, "TestNg Report XML Test 1 Status Parsing validation"); Assert.AreEqual(General.OutputParamExist(GA, @"test1\testSum-Test Status", "PASS"), true, "TestNg Report XML Test 2 Status Parsing validation"); }
public void CreateReportFromFolder() { // Arrange string folder = TestResources.GetTestResourcesFolder("Reports" + Path.DirectorySeparatorChar + "AutomationTab_LastExecution"); //Act ReportInfo reportInfo = new ReportInfo(folder); NewHTMLReport rep = new NewHTMLReport(); string s = rep.CreateReport(reportInfo); // TODO: need to create same report like HTMLDetailedReport // System.IO.File.WriteAllText(@"c:\temp\rep1.html", s); //HTMLDetailedReport hTMLDetailedReport = new HTMLDetailedReport(); //HTMLReportConfiguration hTMLReportConfiguration = new HTMLReportConfiguration(); //hTMLReportConfiguration.RunSetFieldsToSelect = HTMLReportConfiguration.GetReportLevelMembers(typeof(RunSetReport)); //hTMLReportConfiguration.EmailSummaryViewFieldsToSelect = HTMLReportConfiguration.GetReportLevelMembers(typeof(RunSetReport)); //hTMLReportConfiguration.GingerRunnerFieldsToSelect = HTMLReportConfiguration.GetReportLevelMembers(typeof(GingerReport)); //hTMLReportConfiguration.BusinessFlowFieldsToSelect = HTMLReportConfiguration.GetReportLevelMembers(typeof(BusinessFlowReport)); //hTMLReportConfiguration.ActivityGroupFieldsToSelect = HTMLReportConfiguration.GetReportLevelMembers(typeof(ActivityGroupReport)); //hTMLReportConfiguration.ActivityFieldsToSelect = HTMLReportConfiguration.GetReportLevelMembers(typeof(ActivityReport)); //hTMLReportConfiguration.ActionFieldsToSelect = HTMLReportConfiguration.GetReportLevelMembers(typeof(ActionReport)); //GingerExecutionReport gingerExecutionReport = new GingerExecutionReport(); //gingerExecutionReport.TemplatesFolder = @"C:\Users\yaronwe\source\repos\Ginger\Ginger\Ginger\Reports\GingerExecutionReport\"; //gingerExecutionReport.HTMLReportMainFolder = @"c:\temp\rep1"; //gingerExecutionReport.CreateSummaryViewReport(reportInfo); // gingerExecutionReport.CreateSummaryViewReport( .CreateBusinessFlowLevelReport(reportInfo); // string s = ExtensionMethods.CreateSummaryViewReport( .CreateGingerExecutionReport(reportInfo, true); // string s = hTMLDetailedReport.CreateReport(reportInfo); //System.IO.File.WriteAllText(@"c:\temp\rep1.html", s); // gingerExecutionReport.cre .CreateGingerExecutionReport() //HTMLSummaryReport }
public void OLDCLIDynamicRegressionTest() { //Arrange //Create config file string fileName = Path.Combine(TestResources.GetTestResourcesFolder("CLI"), "CLI-Default Run Set.Ginger.AutoRunConfigs.xml"); string dynamicXML = System.IO.File.ReadAllText(fileName); dynamicXML = dynamicXML.Replace("SOLUTION_PATH", mSolutionFolder); string configFile = TestResources.GetTempFile("CLI-Default Run Set.Ginger.AutoRunConfigs.xml"); System.IO.File.WriteAllText(configFile, dynamicXML); // Act CLIProcessor CLI = new CLIProcessor(); CLI.ExecuteArgs(new string[] { "Dynamic=" + configFile }); // Assert Assert.AreEqual(eRunStatus.Passed, WorkSpace.Instance.RunsetExecutor.Runners[0].BusinessFlows[0].RunStatus, "BF RunStatus=Passed"); }
public void DragAndDrop() { try { Service.BrowserActions.Navigate("https://www.seleniumeasy.com/test/drag-and-drop-demo.html", "Current"); GingerWebElement Element = Service.LocateWebElement.LocateElementByXPath(eElementType.WebElement, "//*[@id=\"todrag\"]/span[1]") as GingerWebElement; GingerWebElement Target = Service.LocateWebElement.LocateElementByID(eElementType.WebElement, "mydropzone") as GingerWebElement; Element.DragAndDrop("DragDropJS", Target); GingerWebElement validation = Service.LocateWebElement.LocateElementByXPath(eElementType.Span, "//*[@id=\"droppedlist\"]/span") as GingerWebElement; Assert.AreEqual("Draggable 1", validation.GetAttribute("innerHTML")); } finally { //cleanup string url = Path.Combine(TestResources.GetTestResourcesFolder("HTML"), "HTMLControls.html"); Service.BrowserActions.Navigate(url, "Current"); } }
public void CLIDynamicJSON_NotExist_OnlyNames_Test() { // Arrange string jsonConfigFilePath = CreateTempJSONConfigFile(Path.Combine(TestResources.GetTestResourcesFolder("CLI"), "CLI-NotExisting_OnlyNames.Ginger.AutoRunConfigs.json"), mSolutionFolder); // Act CLIProcessor CLI = new CLIProcessor(); CLI.ExecuteArgs(new string[] { "dynamic", "-f", jsonConfigFilePath }); // Assert Assert.AreEqual(WorkSpace.Instance.RunsetExecutor.RunSetConfig.Name, "Calc_Test_Dynamic", "Validating correct Run set was executed"); //Runner Assert.AreEqual(WorkSpace.Instance.RunsetExecutor.Runners[0].Name, "Runner Dynamic", "Validating correct Runner Name"); //Envs Validation Assert.AreEqual(WorkSpace.Instance.RunsetExecutor.RunsetExecutionEnvironment.Name, "Env1", "Validating correct Run set Environment"); Assert.AreEqual(WorkSpace.Instance.RunsetExecutor.Runners[0].ProjEnvironment.Name, "Env2", "Validating correct Runner Environment"); //Agent Validation Assert.AreEqual(WorkSpace.Instance.RunsetExecutor.Runners[0].ApplicationAgents[0].AgentName, "IE", "Validating correct Runner Agent"); //BF 1 Validation Assert.AreEqual(WorkSpace.Instance.RunsetExecutor.Runners[0].BusinessFlows[0].Name, "Calculator_Test", "Validating correct Business Flow was executed"); Assert.AreEqual(WorkSpace.Instance.RunsetExecutor.Runners[0].BusinessFlows[0].GetBFandActivitiesVariabeles(false).Where(x => x.Name == "DoMultiply?").FirstOrDefault().Value, "No", "Validating Customized BF level Selection List Variable"); Assert.AreEqual(WorkSpace.Instance.RunsetExecutor.Runners[0].BusinessFlows[0].GetBFandActivitiesVariabeles(false).Where(x => x.Name == "SecondNum_ForSum").FirstOrDefault().Value, "44", "Validating Customized Activity level String Variable"); Assert.AreEqual(WorkSpace.Instance.RunsetExecutor.Runners[0].BusinessFlows[0].RunStatus, eRunStatus.Passed, "Validating BF execution Passed"); //BF 2 Validation (same instance of BF) Assert.AreEqual(WorkSpace.Instance.RunsetExecutor.Runners[0].BusinessFlows[2].Name, "Calculator_Test", "Validating correct Business Flow was executed"); Assert.AreEqual(WorkSpace.Instance.RunsetExecutor.Runners[0].BusinessFlows[2].GetBFandActivitiesVariabeles(false).Where(x => x.Name == "DoDivide?").FirstOrDefault().Value, "No", "Validating Customized BF level Selection List Variable"); Assert.AreEqual(WorkSpace.Instance.RunsetExecutor.Runners[0].BusinessFlows[2].GetBFandActivitiesVariabeles(false).Where(x => x.Name == "SecondNum_ForDivide").FirstOrDefault().Value, "1", "Validating Customized Activity level String Variable"); Assert.AreEqual(WorkSpace.Instance.RunsetExecutor.Runners[0].BusinessFlows[2].RunStatus, eRunStatus.Stopped, "Validating BF execution Stopped"); Assert.AreEqual(((RunSetActionHTMLReportSendEmail)(WorkSpace.Instance.RunsetExecutor.RunSetConfig.RunSetActions[0])).MailTo, "*****@*****.**", "Validating report mail Address"); Assert.AreEqual(((RunSetActionHTMLReportSendEmail)(WorkSpace.Instance.RunsetExecutor.RunSetConfig.RunSetActions[0])).Subject, "AAA", "Validating report mail Subject"); }
public void RunScriptAPlusBBAT() { // Arrange ActScript v = new ActScript(); v.ScriptInterpreterType = ActScript.eScriptInterpreterType.BAT; v.AddNewReturnParams = true; v.ScriptCommand = ActScript.eScriptAct.Script; v.AddOrUpdateInputParamCalculatedValue("p1", "5"); v.AddOrUpdateInputParamCalculatedValue("p2", "7"); v.ScriptName = "BatchScriptWithArgs.bat"; v.ScriptPath = TestResources.GetTestResourcesFolder(""); //Act v.Execute(); //Assert Assert.AreEqual(v.Error, null); Assert.AreEqual(v.ReturnValues[0].Param, "Result"); Assert.AreEqual(v.ReturnValues[0].Actual, "12"); }
public static void ClassInit(TestContext TC) { TC.WriteLine("@@@@@@@@@@@@@@@@@@@@@@ ClassInit @@@@@@@@@@@@@@@@@@@@@@@@@@@@"); mTC = TC; Console.WriteLine("===> Starting Ginger"); mGingerAutomator = new GingerAutomator(); mGingerAutomator.StartGinger(); string sampleSolutionFolder = TestResources.GetTestResourcesFolder(@"Solutions\EnvsTest"); SolutionFolder = TestResources.getGingerUnitTesterTempFolder(@"Solutions\EnvsTest"); if (Directory.Exists(SolutionFolder)) { Directory.Delete(SolutionFolder, true); } CopyDir.Copy(sampleSolutionFolder, SolutionFolder); Console.WriteLine("===> Open solution"); TC.WriteLine("@@@@@@@@@@@@@@@@@@@@@@ Open solution @@@@@@@@@@@@@@@@@@@@@@@@@@@@"); mGingerAutomator.OpenSolution(SolutionFolder); LogFile = mTC.TestLogsDir + @"\Ginger_BasicsTest.txt"; }
public static void ClassInitialize(TestContext TestContext) { WorkspaceHelper.CreateDummyWorkSpace(); string folder = TestResources.GetTestTempFolder("Solutions", "PluginTest"); if (Directory.Exists(folder)) { Directory.Delete(folder, true); } SR = GingerSolutionRepository.CreateGingerSolutionRepository(); SR.CreateRepository(folder); SR.Open(folder); WorkSpace.Instance.SolutionRepository = SR; string pluginFolder = TestResources.GetTestResourcesFolder(@"PluginPackages" + Path.DirectorySeparatorChar + "GingerOfficePlugin"); //string txt = WorkSpace.Instance.PlugInsManager.CreatePluginPackageInfo("GingerOfficePlugin", "1.0.0"); //System.IO.File.WriteAllText(pluginFolder + @"\Ginger.PluginPackage.json", txt); WorkSpace.Instance.PlugInsManager.Init(SR); WorkSpace.Instance.PlugInsManager.AddPluginPackage(pluginFolder); }
public void ActivitiesLazyLoadViaNodeLPath() { //arragne ObservableList <Activity> activities = new ObservableList <Activity>(); activities.LazyLoadDetails = new LazyLoadListDetails() { XmlFilePath = Path.Combine(TestResources.GetTestResourcesFolder(@"XML"), "ActivityTest.Ginger.Activity.xml") }; activities.LazyLoadDetails.Config = new LazyLoadListConfig() { LazyLoadType = LazyLoadListConfig.eLazyLoadType.NodePath, ListName = nameof(BusinessFlow.Activities) }; //act if (activities.LazyLoad) { activities.LoadLazyInfo(); } //assert Assert.AreEqual(1, activities.Count); Assert.AreEqual(false, activities.LazyLoad); }
public void ConsoleOutputsReadExecutionTest() { //Arrange TestNGExecuterService service = new TestNGExecuterService(); GingerAction GA = new GingerAction(); List <TestNGTestParameter> paramsToOveride = new List <TestNGTestParameter>(); paramsToOveride.Add(new TestNGTestParameter() { Name = "Num1", Value = "7" }); paramsToOveride.Add(new TestNGTestParameter() { Name = "Num2", Value = "3" }); //Act service.ExecuteTestNGXML(GA, OverwriteJavaHomePath: null, JavaProjectBinPath: Path.Combine(TestResources.GetTestResourcesFolder("JavaTestNG"), "bin"), JavaProjectResourcesPath: Path.Combine(TestResources.GetTestResourcesFolder("JavaTestNG"), "Resources"), TestngXmlPath: Path.Combine(TestResources.GetTestResourcesFolder("JavaTestNG"), "bin", "Calculator", "testng.xml"), TestngXmlParametersToOverwrite: paramsToOveride, OverwriteOriginalTestngXml: false, ParseConsoleOutputs: true, FailActionDueToConsoleErrors: true, ParseTestngResultsXml: true, OverwriteTestngResultsXmlDefaultFolderPath: null, FailActionDueToTestngResultsXmlFailures: true); //Assert Assert.AreEqual((GA.Errors == null || GA.Errors.Count() == 0), true, "No Execution Errors validation"); Assert.AreEqual((GA.Output != null && GA.Output.OutputValues.Count > 0), true, "Execution Output values found validation"); Assert.AreEqual(General.OutputParamExist(GA, "Multipliy Result", "21"), true, "Console Multipliy Output captured validation"); Assert.AreEqual(General.OutputParamExist(GA, "Sum Result", "10"), true, "Console Sum Output captured validation"); Assert.AreEqual(General.OutputParamExist(GA, "Total Passed Test Methods", "2"), true, "TestNg Report XML Statistics Parsing validation"); Assert.AreEqual(General.OutputParamExist(GA, "CalculatorTests- Suite Start Time"), true, "TestNg Report XML Suite details Parsing validation"); Assert.AreEqual(General.OutputParamExist(GA, @"test1\testMoltiple-Test Status", "PASS"), true, "TestNg Report XML Test 1 Status Parsing validation"); Assert.AreEqual(General.OutputParamExist(GA, @"test1\testSum-Test Status", "PASS"), true, "TestNg Report XML Test 2 Status Parsing validation"); }
public void MavenFreeCommandXmlParametersOverrideOnOriginalXmlExecutionTest() { //Arrange TestNGExecuterService service = new TestNGExecuterService(); GingerAction GA = new GingerAction(); List <TestNGTestParameter> paramsToOveride = new List <TestNGTestParameter>(); paramsToOveride.Add(new TestNGTestParameter() { Name = "Num1", Value = "6" }); paramsToOveride.Add(new TestNGTestParameter() { Name = "Num2", Value = "7" }); //Act service.ExecuteMavenFreeCommand(GA, OverwriteMavenHomePath: null, MavenProjectFolderPath: TestResources.GetTestResourcesFolder(@"MavenTestNG"), FreeCommandArguments: "clean install test -DsuiteXmlFile=\"src/main/java/com/Calculator/testng.xml\"", TestngXmlPath: Path.Combine(TestResources.GetTestResourcesFolder("MavenTestNG"), "src", "main", "java", "com", "Calculator", "testng.xml"), TestngXmlParametersToOverwrite: paramsToOveride, OverwriteOriginalTestngXml: true, ParseConsoleOutputs: true, FailActionDueToConsoleErrors: false, ParseTestngResultsXml: true, OverwriteTestngResultsXmlDefaultFolderPath: null, FailActionDueToTestngResultsXmlFailures: true); //Assert Assert.AreEqual((GA.Errors == null || GA.Errors.Count() == 0), true, "No Execution Errors validation"); Assert.AreEqual((GA.Output != null && GA.Output.OutputValues.Count > 0), true, "Execution Output values found validation"); Assert.AreEqual(General.OutputParamExist(GA, "Multipliy Result", "42"), true, "Console Multipliy Output captured validation"); Assert.AreEqual(General.OutputParamExist(GA, "Sum Result", "13"), true, "Console Sum Output captured validation"); Assert.AreEqual(General.OutputParamExist(GA, "Total Passed Test Methods", "2"), true, "TestNg Report XML Statistics Parsing validation"); Assert.AreEqual(General.OutputParamExist(GA, "CalculatorTests- Suite Start Time"), true, "TestNg Report XML Suite details Parsing validation"); Assert.AreEqual(General.OutputParamExist(GA, @"test1\testMoltiple-Test Status", "PASS"), true, "TestNg Report XML Test 1 Status Parsing validation"); Assert.AreEqual(General.OutputParamExist(GA, @"test1\testSum-Test Status", "PASS"), true, "TestNg Report XML Test 2 Status Parsing validation"); }