7
respostas

Path não encontra o chromedriver.exe

Mesmo passando o caminho Path.GetDirectoryName (Assembly.GetExecutingAssembly().Location); para a variavel PastadoExecutavel, o meu teste não encontra o arquivo chromedriver.exe. Tem alguma outra forma de encontrar o arquivo ou até mesmo forçar ele a ir na pasta onde o arquivo se encontra?

7 respostas

Bruno, faz um teste pra mim depois que tiver instalado o pacote do ChromeDriver em seu projeto. Abre o explorer na pasta onde o projeto de teste é compilado (botão direito em cima do projeto, opção Abrir Pasta no Gerenciador de Arquivos, e daí vai descendo na pasta bin\debug até achar a dll do projeto).

Confere se o chromedriver.exe está lá e me dá um feedback aqui por favor.

Bom dia Daniel.

A dll está lá sim.

Bruno, boa tarde. A dll tudo bem, mas e o chromedriver.exe? Se não estiver, confere se você instalou o pacote Selenium.Chrome.WebDriver. Depois de instalar dá um refresh na pasta.

Daniel,

O chromedriver.exe está na pasta também. Já tentei desinstalar e instalar novamente o pacote. Mesmo com o chromedriver lá não encontra o .exe

Coloca aqui pra mim o código que instancia o webdriver. Outra coisa é inspecionar o valor que está recebendo da expressão Path.GetDirectoryName (Assembly.GetExecutingAssembly().Location)

Test Name:    RealizarConsultaNoSerproComCPFECNS
Test FullName:    Project_Test_BCHECK.Specflow.VerificarRetornoDaConsultaDoCPFComACNHFeature.RealizarConsultaNoSerproComCPFECNS
Test Source:    C:\source\Projeto de Teste\Specflow\ConsultarPFPorCNH.feature : line 3
Test Outcome:    Failed
Test Duration:    0:00:00.0745834

Result StackTrace:    
at OpenQA.Selenium.DriverService.FindDriverServiceExecutable(String executableName, Uri downloadUrl)
   at OpenQA.Selenium.Chrome.ChromeDriverService.CreateDefaultService()
   at OpenQA.Selenium.Chrome.ChromeDriver..ctor(ChromeOptions options)
   at Project_Test_BCHECK.VerificarRetornoDaConsultaDoCPFComACNHSteps.SetupTest() in C:\source\Projeto de Teste\VerificarRetornoDaConsultaDoCPFComACNHSteps.cs:line 20
   at TechTalk.SpecFlow.Bindings.BindingInvoker.InvokeBinding(IBinding binding, IContextManager contextManager, Object[] arguments, ITestTracer testTracer, TimeSpan& duration) in D:\a\1\s\TechTalk.SpecFlow\Bindings\BindingInvoker.cs:line 69
   at TechTalk.SpecFlow.Infrastructure.TestExecutionEngine.InvokeHook(IBindingInvoker invoker, IHookBinding hookBinding, HookType hookType) in D:\a\1\s\TechTalk.SpecFlow\Infrastructure\TestExecutionEngine.cs:line 246
   at TechTalk.SpecFlow.Infrastructure.TestExecutionEngine.FireEvents(HookType hookType) in D:\a\1\s\TechTalk.SpecFlow\Infrastructure\TestExecutionEngine.cs:line 232
   at Project_Test_BCHECK.Specflow.VerificarRetornoDaConsultaDoCPFComACNHFeature.ScenarioStart()
   at Project_Test_BCHECK.Specflow.VerificarRetornoDaConsultaDoCPFComACNHFeature.RealizarConsultaNoSerproComCPFECNS() in C:\source\Projeto de Teste\Bcheck\Project_Test_BCHECK\Specflow\ConsultarPFPorCNH.feature:line 4

TestCleanup Stack Trace
   at Project_Test_BCHECK.VerificarRetornoDaConsultaDoCPFComACNHSteps.TeardownTest() in C:\source\Projeto de Teste\VerificarRetornoDaConsultaDoCPFComACNHSteps.cs:line 37
   at TechTalk.SpecFlow.Bindings.BindingInvoker.InvokeBinding(IBinding binding, IContextManager contextManager, Object[] arguments, ITestTracer testTracer, TimeSpan& duration) in D:\a\1\s\TechTalk.SpecFlow\Bindings\BindingInvoker.cs:line 69
   at TechTalk.SpecFlow.Infrastructure.TestExecutionEngine.InvokeHook(IBindingInvoker invoker, IHookBinding hookBinding, HookType hookType) in D:\a\1\s\TechTalk.SpecFlow\Infrastructure\TestExecutionEngine.cs:line 246
   at TechTalk.SpecFlow.Infrastructure.TestExecutionEngine.FireEvents(HookType hookType) in D:\a\1\s\TechTalk.SpecFlow\Infrastructure\TestExecutionEngine.cs:line 232
   at TechTalk.SpecFlow.Infrastructure.TestExecutionEngine.OnScenarioEnd() in D:\a\1\s\TechTalk.SpecFlow\Infrastructure\TestExecutionEngine.cs:line 177
   at Project_Test_BCHECK.Specflow.VerificarRetornoDaConsultaDoCPFComACNHFeature.ScenarioTearDown()
Result Message:    
Test method Project_Test_BCHECK.Specflow.VerificarRetornoDaConsultaDoCPFComACNHFeature.RealizarConsultaNoSerproComCPFECNS threw exception: 
OpenQA.Selenium.DriverServiceNotFoundException: The chromedriver.exe file does not exist in the current directory or in a directory on the PATH environment variable. The driver can be downloaded at http://chromedriver.storage.googleapis.com/index.html.
TestCleanup method Project_Test_BCHECK.Specflow.VerificarRetornoDaConsultaDoCPFComACNHFeature.ScenarioTearDown threw exception. System.NullReferenceException: System.NullReferenceException: Object reference not set to an instance of an object..
Result StandardOutput:    
-> Loading plugin C:\source\Projeto de Teste\bin\Debug\netcoreapp2.2\TechTalk.SpecFlow.MSTest.SpecFlowPlugin.dll
-> Using default config

Apresenta esse erro pra mim.

Fala, Bruno, e o código do teste? Vc consegue colocar aqui? Pode ser só a parte que instancia o webdriver.