Schlagwort-Archive: Selenium

Preisvergleich der Selenium Cloud-Anbieter

Zum Benutzen von Selenium muss man keinen eigenen Selenium-Server betreiben, man kann sich also die Administration (Wartung des Betriebssystem, Updaten von Selenium und Browser-Störungsbehandlung) und überhaupt die Hardware ersparen. Man kann ganz einfach die Testskripte schreiben, die den Selenium-Client in der gewünschten Sprache (z.B. PHP Selenium client) nutzen und mit diesem dann zu einem Selenium Cloud-Anbieter „funken“. Unter „Functional Test Services“ findet sich hier eine Liste der Selenium-Cloud-Anbieter. Die Preismodelle sind recht ähnlich, die Preise jedoch ziemlich unterschiedlich. Leider bietet kein Anbieter einen On-Demand-Service an, also ohne laufende Grundgebühr und Abrechnung nach tatsächlich genutzten Minuten. Amazon, als das Paradebeispiel für Cloud-Service-Provider bietet ein solches Abrechnungsmodell bei EC2 an:
SauceLabs
Die günstigste Lizenz für’s automatische Testen kostet $199/Monat bei monatlicher Kündbarkeit (bei einem Jahresvertrag kostet diese Lizenz immerhin noch $149/Monat): SauceLabs Preisliste
BrowserStack
Die günstigste Lizenz für’s automatische Testen kostet für Unternehmen (Freelancer sind günstiger dran) 79$/Monat bei monatlicher Kündbarkeit (bei einem Jahresvertrag kostet diese Lizenz $59/Monat): BrowserStack-Preisliste
TestingBot
Die günstigste Lizenz für’s automatische Testen kostet $30/Monat bei monatlicher Kündbarkeit (bei einem Jahresvertrag kostet diese Lizenz $20/Monat). Da sind dann auch 300 Freiminuten mit dabei, pro Tag also 10 Minuten: TestingBot Preisliste
crossbrowsertesting
Die günstigste Lizenz für’s automatische Testen kostet für Unternehmen $80/Monat bei monatlicher Kündbarkeit (bei einem Jahresvertrag kostet diese Lizenz immerhin noch $60/Monat). Auch bei crossbrowsertesting haben Freelancer günstigere Konditionen: crossbrowsertesting Preisliste

Performance test of integrated FirePath

I did a basic performance test for my favorite test-automation workflow with an integrated FirePath. I distinguished two phases: duration to start the Firefox Browser and duration for executing a very typical testprogram against a common website. And here are my results:
performanceTest FirePath
The starting of a WebDriver-driven Firefox with an integrated FirePath costs in average about 20 seconds more than the starting of a „naked“ Firefox. In contrast the execution of the typical testprogram doesn’t show a significant difference in velocity. The few seconds difference are maybe caused by performance differences by the webserver of the tested website, anyhow not significant …
To say it very clear: 20 seconds more in the starting phase is nothing compared to the time we spend to navigate a different Firefox (not the driven Firefox) until we finally reach the point of disturbance and finally start to debug the xPath there. So enhance your test-automation workflow with an integrated FirePath!

Better test-automation workflow with integrated FirePath

I appreciate the power of FirePath for coping with xPaths (compare XPath extensions for Chrome), so I like to have it debug-ready on the Firefox which I’m currently „driving“ while creating my testprograms. My ideal test-automation workflow: I set a breakpoint beside a suspicious line of code in my IDE, then I start the testprogram, the Firefox rises, I watch it clicking, typing, … and then the testprogram stops at my breakpoint. Many times a bad xPath is responsible for troubles, so now I like to rise the great FirePath on the halted Firefox and start debugging the bad xPath:
FirePathInWebDriver
And here we go:
Finding the proper combination of the versions of Selenium-Server, Firefox, Firebug (required for Firepath) and Firepath can be a nightmare. I’m heavily missing an official table regarding the version of Selenium-Server and its supported browser versions. After some hours, I found one of these working combinations:
* selenium-server 2.34.0
* Firefox 25
* Firebug 1.12.8b1
* FirePath 0.9.7.1
Download Firefox, Firebug and FirePath in a separate folder to clearly separate them from your current Firefox instance. You can then explicitly start them by code (this example in Java):

FirefoxBinary firefoxBinary = new FirefoxBinary(new File("C:\\Users\\michael\\Firefox v25\\firefox.exe"));
FirefoxProfile profile = new FirefoxProfile();
String pathToFirebugExtension = "C:\\Users\\michael\\Firefox v25 Extensions\\firebug-1.12.8b1-fx.xpi";
profile.addExtension(new File(pathToFirebugExtension));
String pathToFirepathExtension = "C:\\Users\\michael\\Firefox v25 Extensions\\firepath-0.9.7.1-fx.xpi";
profile.addExtension(new File(pathToFirepathExtension));
WebDriver driver = new FirefoxDriver(firefoxBinary, profile);

Then, when the Firefox stops at the breakpoint, you can press F12 (to open FireBug), click on the tab FirePath and start debugging the suspicious xPath.
My next article analyses the performance of the Firefox with the FirePath on his back: https://itkosmopolit.wordpress.com/2015/05/30/performance-test-of-integrated-firepath/