3
respostas

Métodos de Testes com erro

Não sei o porque mas não consigo fazer os testes passarem.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Creio que segui todos os passos mas não consegui fazer passar.

3 respostas
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using Xunit;

namespace Alura.ByteBank.WebApp.Testes
{
    public class NavegandoNaPaginaHome
    {
        [Fact]
        public void CarregarPaginaHomeEVerificarTituloDaPagina()
        {
            // Arrange
            IWebDriver driver = new ChromeDriver(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location));
            // Act
            driver.Navigate().GoToUrl("https://localhost:44309/");
            // Assert
            Assert.Contains("WebApp", driver.Title);
        }

        [Fact]
        public void CarregadaPaginaHomeVerificaExistenciaLinkLoginEHome()
        {
            // Arrange
            IWebDriver driver = new ChromeDriver(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location));
            // Act
            driver.Navigate().GoToUrl("https://localhost:44309/");
            // Assert
            Assert.Contains("Login", driver.PageSource);
            Assert.Contains("Home", driver.PageSource);
        }
    }
}

Log 1

 Alura.ByteBank.WebApp.Testes.NavegandoNaPaginaHome.CarregadaPaginaHomeVerificaExistenciaLinkLoginEHome
   Source: NavegandoNaPaginaHome.cs line 27
   Duration: 1,3 sec

  Message: 
System.InvalidOperationException : session not created: This version of ChromeDriver only supports Chrome version 96
Current browser version is 113.0.5672.127 with binary path C:\Program Files\Google\Chrome\Application\chrome.exe (SessionNotCreated)

  Stack Trace: 
WebDriver.UnpackAndThrowOnError(Response errorResponse)
WebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters)
WebDriver.StartSession(ICapabilities desiredCapabilities)
WebDriver.ctor(ICommandExecutor executor, ICapabilities capabilities)
ChromiumDriver.ctor(ChromiumDriverService service, ChromiumOptions options, TimeSpan commandTimeout)
ChromeDriver.ctor(ChromeDriverService service, ChromeOptions options, TimeSpan commandTimeout)
ChromeDriver.ctor(String chromeDriverDirectory, ChromeOptions options, TimeSpan commandTimeout)
ChromeDriver.ctor(String chromeDriverDirectory, ChromeOptions options)
ChromeDriver.ctor(String chromeDriverDirectory)
NavegandoNaPaginaHome.CarregadaPaginaHomeVerificaExistenciaLinkLoginEHome() line 30
RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)

Log 2

 Alura.ByteBank.WebApp.Testes.NavegandoNaPaginaHome.CarregarPaginaHomeEVerificarTituloDaPagina
   Source: NavegandoNaPaginaHome.cs line 16
   Duration: 869 ms

  Message: 
System.InvalidOperationException : session not created: This version of ChromeDriver only supports Chrome version 96
Current browser version is 113.0.5672.127 with binary path C:\Program Files\Google\Chrome\Application\chrome.exe (SessionNotCreated)

  Stack Trace: 
WebDriver.UnpackAndThrowOnError(Response errorResponse)
WebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters)
WebDriver.StartSession(ICapabilities desiredCapabilities)
WebDriver.ctor(ICommandExecutor executor, ICapabilities capabilities)
ChromiumDriver.ctor(ChromiumDriverService service, ChromiumOptions options, TimeSpan commandTimeout)
ChromeDriver.ctor(ChromeDriverService service, ChromeOptions options, TimeSpan commandTimeout)
ChromeDriver.ctor(String chromeDriverDirectory, ChromeOptions options, TimeSpan commandTimeout)
ChromeDriver.ctor(String chromeDriverDirectory, ChromeOptions options)
ChromeDriver.ctor(String chromeDriverDirectory)
NavegandoNaPaginaHome.CarregarPaginaHomeEVerificarTituloDaPagina() line 19
RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)

Olá, Igor! Tudo bem?

Pela sua dúvida, percebi que você está com dificuldades em fazer os testes passarem, mesmo seguindo todos os passos. Infelizmente, como as imagens que você compartilhou não podem ser visualizadas por mim, fica um pouco mais difícil de entender o que pode estar acontecendo.

No entanto, com base no texto da aula que você está estudando, eu posso sugerir alguns pontos para você verificar:

  1. Importação das bibliotecas corretas: Verifique se todas as bibliotecas necessárias estão sendo importadas corretamente no seu código. No exemplo da aula, são importadas as bibliotecas Xunit, OpenQA.Selenium, OpenQA.Selenium.Chrome, System.IO e System.Reflection.

  2. Instância do WebDriver: Certifique-se de que está criando uma instância do WebDriver corretamente e que o caminho para o chromedriver.exe está correto.

  3. URL correta: Verifique se a URL que você está tentando acessar está correta e se o servidor está rodando. No exemplo da aula, a URL é localhost:44309.

  4. Método de teste: Certifique-se de que o método de teste está correto. No exemplo da aula, o método de teste verifica se o título da página contém o texto WebApp e se o código-fonte da página contém os textos Login e Home.

  5. Execução do teste: Lembre-se de que você precisa iniciar o servidor antes de executar o teste. No exemplo da aula, isso é feito pressionando Ctrl + F5 no Visual Studio.

Espero que essas sugestões possam te ajudar a identificar o problema. Caso você continue com dificuldades, sugiro que compartilhe o código que você está usando para que possamos entender melhor o que pode estar acontecendo.

Espero ter ajudado e bons estudos!