Essendo uno sviluppatore di test di selenio, ho sempre utilizzato WebDriver con conoscenze limitate all'uso dello strumento nello sviluppo di script di test. Ma sono curioso di sapere come WebDriver interagisce con una pagina su un browser internamente.
Lavoro dietro le quinte di Selenium
Le mie domande sono:
- Ho letto che WebDriver interagisce direttamente con il motore di automazione del browser, invece di eseguire JavaScript come Selenio RC. Ciò significa che WebDriver non esegue JavaScript INTERAMENTE A TUTTI?
Ciò significa che esiste più di un modo per interagire con il DOM? Credevo che Javascript fosse l'unico modo per accedere/analizzare il DOM su un browser. Selenium RC utilizzato proxy per eliminare il problema della politica di origine stessa. In che modo WebDriver affronta il problema della stessa politica di origine?
WebDriver utilizza il protocollo JSON. Ma dove nei componenti di WebDriver è utilizzato il protocollo JSON Wire? È utilizzato nei driver dei vari browser ? O è utilizzato nell'API Language Bindings?
- Quando il mio codice è:
WebDriver driver = new ChromeDriver(); driver.get(" http://www.google.com "); WebElement searchField = driver.findElement(By.name("q")); searchField.sendKeys("selenium");
Come è il DOM accede da WebDriver quando viene eseguito il codice di cui sopra?
Sarebbe davvero di grande aiuto se qualcuno potesse spiegarmi questi dettagli. Voglio creare una wiki della comunità riguardante il funzionamento interno di WebDriver per aiutare eventualmente chiunque cerchi questo argomento. Grazie in anticipo!
Cosa intendete per punto 3, "a cosa accede il DOM?" – Arran
Ad esempio, quando eseguo document.getElementById() restituisce un oggetto javascript che rappresenta un elemento sul DOM. Funziona in modo simile con tutte le apis di associazione al webdriver?Webelement contiene un riferimento a un elemento sul DOM? –
La gente vota per aver chiuso questa domanda - Mi piacerebbe sapere perché la domanda è stata votata da vicino ?? Qualche motivo valido? –