2011-01-23 10 views
16

Su Selenium download page, c'è un collegamento allo selenio RC (telecomando).Qual è la differenza tra Selenium Remote Control e Selenium Server?

Su another Selenium download page, ci sono link a un Selenio RC 1.0.3, così come Selenio 2 Server, a volte chiamato anche Selenio 2 Server autonomo.

Qual è la differenza tra loro?

Se esistono limitazioni, quali sono i limiti di ciascuno?

Il server di selenio sostituisce il telecomando?

questione connessa: selenium remote control vs webdriver

risposta

26

Dovresti dare un'occhiata allo documentation outlining the different parts of Selenium. È un buon punto di partenza in quanto ti guida attraverso il processo di impostazione. Piena divulgazione, aiuto a scrivere i documenti.

Per quanto riguarda questi download, il primo collegamento che hai sono le versioni ufficiali del progetto. Il secondo link è l'attuale build beta, una volta colpito 2.0 saranno sul sito.

  • Selenio Nucleo - più una componente di selenio di un solo progetto di stand. Senza entrare nella cronologia del progetto, Selenium era una volta solo una raccolta di file .js che automatizzavano un browser. Nessuno li usa direttamente, sono lì solo per motivi legacy.
  • Selenium IDE - un plugin firefox per registrazione/riproduzione.Si consiglia di iniziare con questo, per abituarsi all'api, ma presto lo diventerete presto
  • Selenio RC e quando non lo supererete, userete il Selenium Remote Control. Selenium 1.x è un'architettura client-server. Le librerie RC si utilizzano per programmare test che comunicano con il server e il server inoltra tali comandi a un browser.
  • Griglia di selenio - un modo per eseguire test Selenium su una rete distribuita di computer. Buono per accelerare le cose una volta che hai fatto un sacco di test.
  • Cubic Test - Uno strumento basato su eclissi che sfrutta il selenio per il test. Non sono sicuro di quanto sia popolare.
  • Bromo - uno script basato su Web e uno strumento per la gestione dei test. Utilizza il selenio RC per eseguire i test.

Quindi si arriva al Selenium 2 beta. Il selenio 2 è un importante punto di partenza dal modello Selenium 1 perché non richiede un server Selenium. Dico 'richiede' perché è facoltativo eseguire i test in remoto su un altro computer. Selenium Server Standalone è il server che utilizzerai per questo. È compatibile con Selenium-RC e Selenium 2 per scopi remoti.

È possibile che si sia visto il selenio 2 denominato WebDriver. WebDriver era un altro progetto che è stato fuso un paio di anni fa e divenne la base per Selenium 2. Ecco perché Selenium 2 ha un'interfaccia WebDriver, a volte chiamata api "WebDriver" per distinguere da Selenium-RC.

Se sei appena agli inizi, darei un'occhiata a Selenium 2. In questo momento sta ottenendo il 99,9% dell'amore per gli sviluppatori, e le macro di Selenium 1.x non avanzeranno ulteriormente. A partire da gennaio 2011 le librerie Java sono le migliori supportate, seguite da vicino da .Net e Python/Ruby. Watir (la famosa libreria di automazione del browser Ruby) usa il selenio sotto il cofano se vuoi un'altra opzione API.

+0

Grazie mille per questa risposta! Posso capire l'architettura client/server in Selenium 1 e 2. Tuttavia, hai detto che il server è facoltativo in Selenium 2 ... Come funziona senza tale server? Può fornire una spiegazione rapida? –

+1

Ogni browser ha un driver appositamente costruito che interagisce nel modo più 'naturale' possibile. C++ per IE, plugin javascript per Firefox, applescript per Safari. Ciò significa che è più lento supportare i nuovi browser, ma l'adattamento è molto meglio del selenio 1. La libreria Selenium 2 parla direttamente con quel driver. Potrebbe non essere utile pensare a Selenium 2 come client/server. Quel server è solo per eseguire test usando RemoteDriver, che è più avanzato. Dovresti assolutamente dare un'occhiata ai documenti per gli esempi di Selenium 2 http://seleniumhq.org/docs/09_webdriver.html – pnewhook

+0

Il link nella risposta e quello nel tuo commento sopra sono entrambi morti –

6

La documentazione sulla Selenium's website dice che il telecomando è composto da

  • un server
  • librerie client

Il server di è responsabile per fare il lavoro effettivo (esecuzione di azioni nel browser), mentre le specifiche per le azioni (il controllo di esecuzione) proviene dal diverse biblioteche.

Questo è chiamato il Remote Control perché il server non deve essere distribuito sulla stessa macchina in cui vengono eseguiti gli script effettivi. Gli script possono connettersi a un server di selenio remoto sulla rete ed eseguire azioni.

Per riassumere, quando si utilizza il controllo remoto selenio, si utilizzano le librerie server + client. Sono pensati per essere usati insieme.

Non so se questo sarà lo stesso per il Selenio 2 o se stanno cambiando le cose. Sono certo che questo è il modo in cui le cose funzionano per Selenium 1.

Problemi correlati