1
resposta

Ao Executar o teste de Logout o drive.pagesource esta com o codigo da pagina interessadas

Olá, Uma ajuda!

Após executar o teste de logout desta aula, não esta passando o teste. E após analisar identifiquei após o objeto Action ser criado e executa o action.perform(). O sistema continua com o drive.pagesource com o codigo da pagina interessado, quando o esperado seria constar a pagina home, após ter sido clicado no logout.

Segue teste:

        [Fact]
        public void DadoLoginValidoDeveIrParaHomeNãoLogado()
        {
            //arrange
            var loginPO = new LoginPO(driver);
            loginPO.Visitar();
            loginPO.PreencheFormulario("fulano@example.org", "123");
            loginPO.SubmeteFormulario();

            //act
            var dashboardPO = new DashboardInteressadaPO(driver);
            dashboardPO.EfetuarLogout();

            //assert
            Assert.Contains("Próximos Leilões", driver.PageSource);
        }

Segue o Metodo da PageObject desta classe de teste.

public class DashboardInteressadaPO
    {
        private IWebDriver driver;
        private By byLogoutLink;
        private By byMeuPerfilLink;

        public DashboardInteressadaPO(IWebDriver driver)
        {
            this.driver = driver;
            byLogoutLink = By.Id("logout");
            byMeuPerfilLink = By.Id("meu-perfil");
        }

        public void EfetuarLogout()
        {
            var linkLogout = driver.FindElement(byLogoutLink);
            var linkMeuPerfil = driver.FindElement(byMeuPerfilLink);

            IAction acaoLogout = new Actions(driver)
                .MoveToElement(linkMeuPerfil)
                .MoveToElement(linkLogout)
                .Click()
                .Build();

            acaoLogout.Perform();
        }
    }

Obrigado!!!
1 resposta

Marcelo, bom dia. Uma pergunta: quando faz o logout manualmente o sistema vai para a home (exibe "Próximos Leilões"?