È possibile disattivare JavaScript in FirefoxProfile
:
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("javascript.enabled", false);
WebDriver driver = new FirefoxDriver(profile);
Non credo che ci sia un modo per disattivare i CSS e questo non è quello che si dovrebbe fare - questo può rompere la vostra applicazione web, e la disattivazione può fare questo JavaScript pure.
Non c'è modo di impostare direttamente il valore del campo di testo - WebDriver è progettato per simulare l'utente reale che "guida" il browser - ecco perché ci sono solo sendKeys.
Tuttavia è possibile impostare il valore dell'elemento tramite chiamata JavaScript (se non lo si disabilita, ovviamente). Questo è più veloce per la lunga prova, ma questo non è l'emulazione del interazione con l'utente in modo da alcuni convalide non possono essere attivati, in modo da utilizzare con cautela:
private void setValue(WebElement element, String value) {
((JavascriptExecutor)driver).executeScript("arguments[0].value = arguments[1]", element, value);
}
e usarlo:
WebElement inputField = driver.findElement(By...);
setValue(inputField, "The long long long long long long long text......");
fonte
2010-08-25 08:46:14
Si sta sovvertendo WebDriver facendo apparire l'intera stringa in una volta. WebDriver è progettato per emulare un utente, un utente non scrive magicamente il testo, lo digita. Potrebbe richiedere un po 'più di tempo, ma è un'emulazione accurata di una persona reale. – Ardesco
Se si disabilita JS, CSS, l'intera pagina potrebbe interrompersi in modo che alcuni test funzionali che verranno eseguiti da Selenium WebDriver potrebbero essere interrotti. Lo scopo del test è Funzionale, non Prestazionale. –