public static Task <int> ExecuteAsync(CancellationToken token)
        {
            string[] acceptableCommands = new string[]
            {
                TestAppScenarios.EnvironmentVariables.Commands.IncVar,
                TestAppScenarios.EnvironmentVariables.Commands.ShutdownScenario,
            };
            return(ScenarioHelpers.RunScenarioAsync(async logger =>
            {
                while (true)
                {
                    string command = await ScenarioHelpers.WaitForCommandAsync(acceptableCommands, logger);

                    switch (command)
                    {
                    case TestAppScenarios.EnvironmentVariables.Commands.IncVar:
                        string currValue = Environment.GetEnvironmentVariable(TestAppScenarios.EnvironmentVariables.IncrementVariableName) ?? "0";
                        if (!int.TryParse(currValue, out int oldValue))
                        {
                            oldValue = 0;
                        }
                        string newValue = (oldValue + 1).ToString();
                        Environment.SetEnvironmentVariable(TestAppScenarios.EnvironmentVariables.IncrementVariableName, newValue);
                        break;

                    case TestAppScenarios.EnvironmentVariables.Commands.ShutdownScenario:
                        return 0;
                    }
                }
            }, token));
        }
 public PageRepositorySteps(GivenData given, ActualData actual, ScenarioHelpers scenarioHelpers)
 {
     _given              = given;
     _actual             = actual;
     _pageRepository     = scenarioHelpers.PageRepository;
     _blogPostRepository = scenarioHelpers.BlogPostRepository;
 }
        public static void AddLogStep(string text)
        {
            if (frameworkType == "SpecflowTests")
            {
                var    StepType    = ScenarioHelpers.GetStepType();
                string description = ScenarioHelpers.GetStepsDescription();
                string status      = ScenarioHelpers.GetScenarioStatus().ToString();


                switch (StepType)
                {
                case TechTalk.SpecFlow.Bindings.StepDefinitionType.Given:
                    _test.CreateNode <Given>(description).Pass(status + "<pre> Valor informado: [" + text + "]</pre>");
                    break;

                case TechTalk.SpecFlow.Bindings.StepDefinitionType.When:
                    _test.CreateNode <When>(description).Pass(status + "<pre> Valor informado: [" + text + "]</pre>");
                    break;

                case TechTalk.SpecFlow.Bindings.StepDefinitionType.Then:
                    _test.CreateNode <Then>(description).Pass(status + "<pre> Valor informado: [" + text + "]</pre>");
                    break;

                default:
                    _test.CreateNode <And>(description).Pass(status + "<pre> Valor informado: [" + text + "]</pre>");
                    break;
                }
            }
            else if ((frameworkType == "NunitTests"))
            {
                var    StepType    = SeleniumTestHelper.GetClassNameTest(30);
                string description = SeleniumTestHelper.GetTestDescription();
                string nase        = SeleniumTestHelper.GetTestCaseName();

                TestStatus status = SeleniumTestHelper.GetTestStatus();

                Status logstatus;
                switch (status)
                {
                case TestStatus.Failed:
                    logstatus = Status.Fail;
                    break;

                case TestStatus.Inconclusive:
                    logstatus = Status.Warning;
                    break;

                case TestStatus.Skipped:
                    logstatus = Status.Skip;
                    break;

                default:
                    logstatus = Status.Pass;
                    break;
                }

                _test.Log(logstatus, "<pre> Valor informado: [" + text + "]</pre>");
            }
        }
 public GitRepositorySteps(GivenData given, ScenarioHelpers scenarioHelpers, IClock clock)
 {
     _given              = given;
     _clock              = clock;
     _gitRepository      = scenarioHelpers.GitRepository;
     _gitCloneDirectory  = scenarioHelpers.GitCloneDirectory;
     _gitRemoteDirectory = scenarioHelpers.GitRemoteDirectory;
 }
        private void btnPlay_Click(object sender, RoutedEventArgs e)
        {
            Size s = PageNavigator.MainWindow.RenderSize;

            GraphicsHelpers.SetContentHeight(s.Height / 2);
            GraphicsHelpers.SetContentWidth(s.Width / 2);

            ScenarioHelpers.SetupScenario(this.Scenario);
        }
Exemple #6
0
        public static Task <int> ExecuteAsync(CancellationToken token)
        {
            return(ScenarioHelpers.RunScenarioAsync(async logger =>
            {
                await ScenarioHelpers.WaitForCommandAsync(TestAppScenarios.AsyncWait.Commands.Continue, logger);

                return 0;
            }, token));
        }
Exemple #7
0
 public PublishAsyncSteps(GivenData given, ActualData actual, ScenarioHelpers scenarioHelpers, InvocationRecorder invocationRecorder, ISlugFactory slugFactory)
 {
     _given              = given;
     _actual             = actual;
     _blogPostRepository = scenarioHelpers.BlogPostRepository;
     _blogPostRepositoryWorkingDirectory = scenarioHelpers.BlogPostRepositoryWorkingDirectory;
     _invocationRecorder = invocationRecorder;
     _slugFactory        = slugFactory;
 }
        //public static void GivenStep()
        //{
        //    if (frameworkType == "BDD")
        //    {
        //        string description = ScenarioHelpers.GetStepsDescription();
        //        string status = ScenarioHelpers.GetScenarioStatus().ToString();
        //        // steps
        //        _test.CreateNode<Given>(description).Pass(status);
        //    }
        //    else { }


        //}
        //public static void AndStep()
        //{
        //    if (frameworkType == "BDD")
        //    {

        //        string description = ScenarioHelpers.GetStepsDescription();
        //        // steps
        //        string status = ScenarioHelpers.GetScenarioStatus().ToString();
        //        _test.CreateNode<And>(description).Pass(status);
        //    }
        //    else { }

        //}
        //public static void WhenStep()
        //{
        //    if (frameworkType == "BDD")
        //    {
        //        string description = ScenarioHelpers.GetStepsDescription();
        //        string status = ScenarioHelpers.GetScenarioStatus().ToString();
        //        // steps

        //        _test.CreateNode<When>(description).Pass(status);
        //    }
        //    else { }


        //}
        public static void ThenStep()
        {
            if (frameworkType == "BDD")
            {
                string description = ScenarioHelpers.GetStepsDescription();
                string status      = ScenarioHelpers.GetScenarioStatus().ToString();
                _test.CreateNode <Then>(description).Pass(status);
            }
            else
            {
            }
        }
        private void btnPlay_Click(object sender, RoutedEventArgs e)
        {
            popUpSplash.IsOpen = true;

            DoEvents();

            Scenario scenario = (Scenario)((Button)sender).Tag;

            ScenarioHelpers.SetupScenario(scenario);

            popUpSplash.IsOpen = false;
        }
Exemple #10
0
        public static Task <int> ExecuteAsync(CancellationToken token)
        {
            return(ScenarioHelpers.RunScenarioAsync(async logger =>
            {
                await ScenarioHelpers.WaitForCommandAsync(TestAppScenarios.SpinWait.Commands.StartSpin, logger);

                Task continueTask = Task.Run(() => ScenarioHelpers.WaitForCommandAsync(TestAppScenarios.SpinWait.Commands.StopSpin, logger));

                while (!continueTask.IsCompleted)
                {
                    Thread.SpinWait(1_000_000);
                }

                return 0;
            }, token));
        }
        public static void AddScreenShot()
        {
            if (frameworkType == "SpecflowTests")
            {
                //var StepType = ScenarioHelpers.GetStepType();
                string description = ScenarioHelpers.GetScenarioName();
                //string status = ScenarioHelpers.GetScenarioStatus().ToString();

                if (description != ArchiveName)
                {
                    string path     = @"C:\Selenium\";
                    string fileName = "BDDPrint - " + DateTime.Now.ToString("dd-MM-yyyy HH-mm-ss") + ".png";

                    string screenshotPath = path + fileName;

                    Screenshot ss = ((ITakesScreenshot)DriverFactory.Instance).GetScreenshot();

                    //Use it as you want now
                    string screenshot            = ss.AsBase64EncodedString;
                    byte[] screenshotAsByteArray = ss.AsByteArray;
                    ss.SaveAsFile(path + fileName, ScreenshotImageFormat.Png); //use any of the built in image formating
                    ss.ToString();                                             //same as string screenshot = ss.AsBase64EncodedString;

                    //var mediaModel = MediaEntityBuilder.CreateScreenCaptureFromPath(screenshotPath).Build();

                    //_test.CreateNode<Then>("Teste Passou").Pass("Evidência: ", mediaModel);
                    //_test.CreateNode<Then>("Teste Passou", MediaEntityBuilder.CreateScreenCaptureFromPath(screenshotPath).Build());

                    //_test.Pass("Evidência: ").AddScreenCaptureFromPath(screenshotPath);

                    //_test.Pass("Evidência: ", MediaEntityBuilder.CreateScreenCaptureFromPath(screenshotPath).Build());

                    _test.CreateNode <Then>("Evidência:").Pass(DriverFactory.BaseUrl).AddScreenCaptureFromPath(screenshotPath);
                    //_test.CreateNode<Then>("Teste Passou").Pass("Screenshot").AddScreenCaptureFromPath(path + fileName);


                    ArchiveName = description;
                }
                else if ((frameworkType == "NunitTests"))
                {
                    //TODO - Screenshot NUNIT tests
                }
            }


            //
        }
        public static Task <int> ExecuteAsync(CancellationToken token)
        {
            return(ScenarioHelpers.RunScenarioAsync(async logger =>
            {
                using ServiceProvider services = new ServiceCollection()
                                                 .AddLogging(builder =>
                {
                    builder.AddEventSourceLogger();
                    builder.AddFilter(null, LogLevel.None);     // Default
                    builder.AddFilter(TestAppScenarios.Logger.Categories.LoggerCategory1, LogLevel.Debug);
                    builder.AddFilter(TestAppScenarios.Logger.Categories.LoggerCategory2, LogLevel.Information);
                    builder.AddFilter(TestAppScenarios.Logger.Categories.LoggerCategory3, LogLevel.Warning);
                }).BuildServiceProvider();

                ILoggerFactory loggerFactory = services.GetRequiredService <ILoggerFactory>();

                await ScenarioHelpers.WaitForCommandAsync(TestAppScenarios.Logger.Commands.StartLogging, logger);

                ILogger cat1Logger = loggerFactory.CreateLogger(TestAppScenarios.Logger.Categories.LoggerCategory1);
                LogTraceMessage(cat1Logger);
                LogDebugMessage(cat1Logger);
                LogInformationMessage(cat1Logger);
                LogWarningMessage(cat1Logger);
                LogErrorMessage(cat1Logger);
                LogCriticalMessage(cat1Logger);

                ILogger cat2Logger = loggerFactory.CreateLogger(TestAppScenarios.Logger.Categories.LoggerCategory2);
                LogTraceMessage(cat2Logger);
                LogDebugMessage(cat2Logger);
                LogInformationMessage(cat2Logger);
                LogWarningMessage(cat2Logger);
                LogErrorMessage(cat2Logger);
                LogCriticalMessage(cat2Logger);

                ILogger cat3Logger = loggerFactory.CreateLogger(TestAppScenarios.Logger.Categories.LoggerCategory3);
                LogTraceMessage(cat3Logger);
                LogDebugMessage(cat3Logger);
                LogInformationMessage(cat3Logger);
                LogWarningMessage(cat3Logger);
                LogErrorMessage(cat3Logger);
                LogCriticalMessage(cat3Logger);

                return 0;
            }, token));
        }
        public static void AddFeature()
        {
            string name = ScenarioHelpers.GetScenarioName();

            if (frameworkType == "BDD")
            {
                if (name != ScenarioName)
                {
                    string category = ScenarioHelpers.GetFeatureName();
                    _test = _extent.CreateTest <Feature>(name)
                            .AssignCategory(category)
                            .CreateNode <Scenario>(name);

                    ScenarioName = name;
                }
            }
            else
            {
            }
        }
 public FindBlogPostsAsyncSteps(GivenData given, ActualData actual, ScenarioHelpers scenarioHelpers)
 {
     _given              = given;
     _actual             = actual;
     _blogPostRepository = scenarioHelpers.BlogPostRepository;
 }
 private void btnPlay_Click(object sender, RoutedEventArgs e)
 {
     ScenarioHelpers.SetupScenario(this.Scenario);
 }