Selenium webdriver e chromedriver

Olá , bom dia .

Estou querendo rodar meus testes com selenium webdriver usando o chromedriver .

Porém sempre aparece esta exceção : Exception in thread "main" java.lang.IllegalStateException: The path to the driver executable must be set by the webdriver.chrome.driver system property; for more information, see http://code.google.com/p/selenium/wiki/ChromeDriver. The latest version can be downloaded from http://code.google.com/p/chromedriver/downloads/list

Eu já defini o caminho no path e não foi suficiente . Agora criei uma variável de ambiente , chamada webdriver.chrome.driver e coloquei o caminho para o chromedriver.exe .

E então estou tentando colocar este código : [code]

System.setProperty("webdriver.chrome.driver ", “C:\Driver para webDriver\chromedriver.exe”);[/code]

Mas não consigo inicializar o teste .

Alguma sugestão ?

Obrigada .

A questão é como vc está fazendo tal chamada, exemplo olha só abaixo, primeiro dou setProperty só depois crio a instância do WebDriver:

System.setProperty("webdriver.chrome.driver", System.getProperty("user.dir") + "\\lib\\chromedriver.exe"); driver = new ChromeDriver();

Ficaria assim …


private WebDriver driver;

 @Before
    public void inicializa() throws Exception {
       System.setProperty("webdriver.chrome.driver",System.getProperty("user.dir") + "C:\Driver para webDriver\chromedriver.exe");
        this.driver = new ChromeDriver();
    }

Coloquei a definição da propriedade fora do método , após a declaração do driver , mas mantém o erro .

A definição da propriedade está com caractere de escape ilegal .

Obrigada .

[quote=jeh_dias]
Ficaria assim …


private WebDriver driver;

 @Before
    public void inicializa() throws Exception {
       System.setProperty("webdriver.chrome.driver",System.getProperty("user.dir") + "C:\Driver para webDriver\chromedriver.exe");
        this.driver = new ChromeDriver();
    }

Coloquei a definição da propriedade fora do método , após a declaração do driver , mas mantém o erro .

A definição da propriedade está com caractere de escape ilegal .

Obrigada .[/quote]

Mas não vai funcionar mesmo, vc precisa tirar o trecho “C:\Driver para webDriver” se é que pretende buscar dentro do Eclipse.

As barras do caminho , tem que ser duplas .

E o System.getProperty("user.dir)

Quando compilei deu erro , ai tirei e deu certo .

Estou usando o netbeans .

Oi jeh,

eu ainda não consegui rodar aqui. Meu @before está assim:

	@BeforeMethod
	public void setUp() throws Exception {
		baseUrl = "http://xxx.com";
		baseUrlAdmin = "http://xxx.com";
		driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
		File file = new File("C:\\Automation Tests\\chromeDriver\\chromedriver.exe");
		System.setProperty("webdriver.chrome.driver", file.getAbsolutePath());
		driver = new ChromeDriver();

e aparece este erro:


[TestNG] Running:
  C:\Users\Rafael\AppData\Local\Temp\testng-eclipse--286829347\testng-customsuite.xml

FAILED CONFIGURATION: @BeforeMethod setUp
java.lang.NullPointerException
	at storeDesktop.PurchaseInStore1.setUp(PurchaseInStore1.java:26)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:84)
	at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:564)
	at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:213)
	at org.testng.internal.Invoker.invokeMethod(Invoker.java:653)
	at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)
	at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)
	at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
	at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
	at org.testng.TestRunner.privateRun(TestRunner.java:767)
	at org.testng.TestRunner.run(TestRunner.java:617)
	at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
	at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:329)
	at org.testng.SuiteRunner.privateRun(SuiteRunner.java:291)
	at org.testng.SuiteRunner.run(SuiteRunner.java:240)
	at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
	at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
	at org.testng.TestNG.runSuitesSequentially(TestNG.java:1224)
	at org.testng.TestNG.runSuitesLocally(TestNG.java:1149)
	at org.testng.TestNG.run(TestNG.java:1057)
	at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:111)
	at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:204)
	at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:175)

SKIPPED CONFIGURATION: @AfterMethod tearDown
SKIPPED: PurchaseFuneralHome

===============================================
    Default test
    Tests run: 1, Failures: 0, Skips: 1
    Configuration Failures: 1, Skips: 1
===============================================


===============================================
Default suite
Total tests run: 1, Failures: 0, Skips: 1
Configuration Failures: 1, Skips: 1
===============================================

[TestNG] Time taken by org.testng.reporters.JUnitReportReporter@3de5da76: 13 ms
[TestNG] Time taken by org.testng.reporters.EmailableReporter2@2646b10b: 7 ms
[TestNG] Time taken by org.testng.reporters.jq.Main@63deebc8: 40 ms
[TestNG] Time taken by org.testng.reporters.XMLReporter@2c2c14f9: 11 ms
[TestNG] Time taken by [FailedReporter passed=0 failed=0 skipped=0]: 7 ms
[TestNG] Time taken by org.testng.reporters.SuiteHTMLReporter@107267a4: 27 ms

Oi Rafael , tudo bem ?

Este erro ainda não conheço .

Esse webdriver.chrome.driver você definiu como uma variável path ?

Mas tenta colocar esse seu erro na página stackoverflow.com , eles podem te ajudar .

Ou na página www.agiletesters.com.br .

Na verdade eu defini o arquivo chromedriver no path, veja: http://screencast.com/t/feoHLU6kQ

Assim que você fez?

Att,
Rafael

Olha como está o meu , não está na variável path , eu criei uma outra variável com o nome webdriver.chrome.driver e defini o caminho .

Olha como ele está : http://imagizer.imageshack.us/v2/800x600q90/13/zbot.png

Conhece as fontes que te falei ?

Pois é, tá bem estranho.

Vou postar lá. Obrigado Jeh :slight_smile:

Acho que você fez o que eu tinha feito antes , colocar o caminho p/ o driver na variavel path , o erro continua .

Porém este seu erro é diferente do meu .

De nada .

Mas agora eu defini corretamente, conforme a sua imagem.

Obs…: Aquele agiletester é uma droga :stuck_out_tongue:

E deu alguma diferença depois que você definiu de forma diferente ?

Ele tem conteúdo , mas auxílio acho que não é o foco deles ne ?

Deu o mesmo erro, Jeh. Informa que o método setUp está configurado errado.

No google groups, tem o grupo Selenium Users, se você não conhece, vale a pena!

Mesmo assim, muito obrigado :slight_smile:

Entendi .

Conheço sim , já consegui resolver problemas lá .

Por nada , boa sorte .