Ejemplo n.º 1
0
        private void NewCloseEyes()
        {
            try
            {
                TestResults TR;
                if (newmEyes.IsOpen)
                {
                    TR = newmEyes.Close(false);
                }
                else
                {
                    TestResultsSummary    allTestResults  = runner.GetAllTestResults(false);
                    TestResultContainer[] resultContainer = allTestResults.GetAllResults();
                    TR = resultContainer[0].TestResults;
                }
                SaveApplitoolsImages(TR);
                // Update results info into outputs
                mAct.ExInfo = "URL to view results: " + TR.Url;
                mAct.AddOrUpdateReturnParamActual("ResultsURL", TR.Url + "");
                mAct.AddOrUpdateReturnParamActual("Steps", TR.Steps + "");
                mAct.AddOrUpdateReturnParamActual("Matches", TR.Matches + "");
                mAct.AddOrUpdateReturnParamActual("Mismatches", TR.Mismatches + "");
                mAct.AddOrUpdateReturnParamActual("ExactMatches", TR.ExactMatches + "");
                mAct.AddOrUpdateReturnParamActual("StrictMatches", TR.StrictMatches + "");
                mAct.AddOrUpdateReturnParamActual("ContentMatches", TR.ContentMatches + "");
                mAct.AddOrUpdateReturnParamActual("LayoutMatches", TR.LayoutMatches + "");
                mAct.AddOrUpdateReturnParamActual("Missing", TR.Missing + "");



                if (!TR.IsNew)
                {
                    foreach (StepInfo step in TR.StepsInfo)
                    {
                        if (!step.HasCurrentImage)
                        {
                            mAct.AddOrUpdateReturnParamActual(step.Name, "Failed with Missing Image" + "");
                        }
                        else
                        {
                            mAct.AddOrUpdateReturnParamActual(step.Name, step.IsDifferent ? "Failed" : "Passed" + "");
                        }
                    }
                }
                mAct.AddOrUpdateReturnParamActual("IsNew", TR.IsNew + "");
                if ((TR.Mismatches == 0 || TR.IsNew) && TR.Missing == 0)
                {
                    mAct.Status = Amdocs.Ginger.CoreNET.Execution.eRunStatus.Passed;
                    if (TR.IsNew)
                    {
                        mAct.ExInfo = "Created new baseline in Applitools.";
                    }
                    else
                    {
                        mAct.ExInfo = TR.Matches + " steps Matched with saved baseline in Applitools.";
                    }
                }
                else
                {
                    mAct.Status = Amdocs.Ginger.CoreNET.Execution.eRunStatus.Failed;
                    if (TR.Mismatches != 0)
                    {
                        mAct.Error = TR.Mismatches + " steps Mismatched with saved baseline image in Applitools. ";
                    }
                    if (TR.Missing != 0)
                    {
                        mAct.Error += TR.Missing + " steps missing current images.";
                    }
                }
            }
            catch (Exception ex)
            {
                mAct.Error += "Eyes Close operation failed, Error: " + ex.Message;
            }
            finally
            {
                newmEyes.AbortIfNotClosed();
            }
        }
Ejemplo n.º 2
0
        public void TestIosDeviceReportedResolutionOnFailure()
        {
            ILogHandler logHandler = TestUtils.InitLogHandler();
            EyesRunner  runner     = new VisualGridRunner(10, logHandler);
            Eyes        eyes       = new Eyes(runner);

            Configuration config = eyes.GetConfiguration();

            config.AddBrowser(new DesktopBrowserInfo(new RectangleSize(700, 460), BrowserType.CHROME));
            config.AddDeviceEmulation(DeviceName.Galaxy_S3);
            config.AddBrowser(new IosDeviceInfo(IosDeviceName.iPhone_11_Pro));
            config.AddBrowser(new IosDeviceInfo(IosDeviceName.iPhone_XR));
            config.SetBatch(TestDataProvider.BatchInfo);
            config.SetAppName("Visual Grid DotNet Tests");
            config.SetTestName("UFG Mobile Device No Result");
            eyes.SetConfiguration(config);

            IWebDriver driver = SeleniumUtils.CreateChromeDriver();

            driver.Url = "https://demo.applitools.com";
            try
            {
                eyes.Open(driver);
                eyes.Check(Target.Window());
                eyes.CloseAsync();
            }
            finally
            {
                driver.Quit();
                eyes.AbortAsync();
            }

            TestResultsSummary allTestResults = runner.GetAllTestResults(false);

            Assert.AreEqual(4, allTestResults.GetAllResults().Length);

            // Set results in array
            TestResults[] testResults = new TestResults[4];
            foreach (TestResultContainer resultsContainer in allTestResults)
            {
                RenderBrowserInfo browserInfo = resultsContainer.BrowserInfo;
                TestResults       results     = resultsContainer.TestResults;
                if (browserInfo.IosDeviceInfo == null && browserInfo.EmulationInfo == null)
                {
                    testResults[0] = results;
                    continue;
                }

                if (browserInfo.EmulationInfo != null)
                {
                    testResults[1] = results;
                    continue;
                }

                IosDeviceName deviceName = browserInfo.IosDeviceInfo.DeviceName;
                if (deviceName == IosDeviceName.iPhone_11_Pro)
                {
                    testResults[2] = results;
                    continue;
                }

                if (deviceName == IosDeviceName.iPhone_XR)
                {
                    testResults[3] = results;
                    continue;
                }

                Assert.Fail();
            }

            Assert.AreEqual(new RectangleSize(700, 460), testResults[0].HostDisplaySize);
            Assert.AreEqual(new RectangleSize(360, 640), testResults[1].HostDisplaySize);
            Assert.AreEqual(new RectangleSize(375, 812), testResults[2].HostDisplaySize);
            Assert.AreEqual(new RectangleSize(414, 896), testResults[3].HostDisplaySize);
        }
Ejemplo n.º 3
0
        public void TestIosDeviceReportedResolutionOnFailure()
        {
            EyesRunner runner = new VisualGridRunner(10);
            Eyes       eyes   = new Eyes(runner);

            TestUtils.SetupLogging(eyes);
            eyes.visualGridEyes_.EyesConnectorFactory = new LocalEyesConnectorFactory();

            Configuration config = eyes.GetConfiguration();

            config.AddBrowser(new DesktopBrowserInfo(new RectangleSize(700, 460), BrowserType.CHROME));
            config.AddDeviceEmulation(DeviceName.Galaxy_S3);
            config.AddBrowser(new IosDeviceInfo(IosDeviceName.iPhone_11_Pro));
            config.AddBrowser(new IosDeviceInfo(IosDeviceName.iPhone_XR));
            config.SetBatch(TestDataProvider.BatchInfo);
            config.SetAppName("Visual Grid DotNet Tests");
            config.SetTestName("UFG Mobile Device No Result");
            eyes.SetConfiguration(config);

            IWebDriver driver = SeleniumUtils.CreateChromeDriver();

            driver.Url = "https://demo.applitools.com";
            try
            {
                eyes.Open(driver);
                eyes.Check(Target.Window());
                eyes.CloseAsync();
            }
            finally
            {
                driver.Quit();
                eyes.AbortAsync();
            }

            TestResultsSummary allTestResults = runner.GetAllTestResults(false);

            Assert.AreEqual(4, allTestResults.GetAllResults().Length);

            // Set results in array
            TestResults[] testResults = new TestResults[4];
            foreach (TestResultContainer resultsContainer in allTestResults)
            {
                RenderBrowserInfo browserInfo = resultsContainer.BrowserInfo;
                TestResults       results     = resultsContainer.TestResults;
                if (browserInfo.IosDeviceInfo == null && browserInfo.EmulationInfo == null)
                {
                    testResults[0] = results;
                    continue;
                }

                if (browserInfo.EmulationInfo != null)
                {
                    testResults[1] = results;
                    continue;
                }

                IosDeviceName deviceName = browserInfo.IosDeviceInfo.DeviceName;
                if (deviceName == IosDeviceName.iPhone_11_Pro)
                {
                    testResults[2] = results;
                    continue;
                }

                if (deviceName == IosDeviceName.iPhone_XR)
                {
                    testResults[3] = results;
                    continue;
                }

                Assert.Fail();
            }

            SessionResults chromeSessionResults         = TestUtils.GetSessionResults(eyes.ApiKey, testResults[0]);
            string         actualUserAgent              = chromeSessionResults.StartInfo.Environment.Inferred;
            Dictionary <BrowserType, string> userAgents = eyes.visualGridEyes_.eyesConnector_.GetUserAgents();

            Assert.AreEqual("useragent: " + userAgents[BrowserType.CHROME], actualUserAgent);

            Assert.AreEqual(new RectangleSize(700, 460), testResults[0].HostDisplaySize);
            Assert.AreEqual(new RectangleSize(360, 640), testResults[1].HostDisplaySize);
            Assert.AreEqual(new RectangleSize(375, 812), testResults[2].HostDisplaySize);
            Assert.AreEqual(new RectangleSize(414, 896), testResults[3].HostDisplaySize);
        }