2013-03-13 15 views
8

Sembra che dovrebbe essere piuttosto semplice, ma non vedo come ottenere l'accesso ai valori nel mio file GebConfig.groovy. Ho provato la seguente:Geb Configuration

userName = "myUserName" 

properties = { 
    userName = "myUserName" 
} 

props { 
    userName = "myUserName" 
} 

environments { 
    chrome = { 
    driver = { new ChromeDriver() } 
    userName = "myUserName" //with and without {} 
    } 
} 

Eppure io ancora non riesco a accedere a queste proprietà tramite:

browser.driver.properties.userName 

Sono in grado di impostare le proprietà nel file di configurazione, e quindi accedervi nella mia specifica? Mi sembra di ottenere il set predefinito di proprietà, che è semplicemente le proprietà di sistema.

+1

Hai davvero cercare 'browser.driver.properties' (piuttosto che' browser.config.properties'), o è solo un errore di battitura ? –

+0

Era semplicemente un refuso. – Scott

risposta

8

Questo era piuttosto semplice, tuttavia stavo rendendo il problema molto più difficile di quanto avrebbe dovuto. Non potevo vedere la foresta per gli alberi.

Ho notato che nella classe Configuration, gli elementi di rawConfig venivano acquisiti dai metodi readValue. Anche getRawConfig non veniva mostrato nella struttura o nelle fonti di configurazione, e mi portava a saltare direttamente nel tentativo di accedervi direttamente.

browser.getConfig().getRawConfig().get("userName") 

O in un altro groove come la moda:

browser.config.rawConfig.userName