Contact: Web / Voice / Email / Tips
Simple Thoughts Blog - Java and Web Technologies

Simple solutions for complex problems.

 

9 Important Tips for Selenium Remote Control (Java client) - Test Tool

April 16th, 2008 by Angsuman Chakraborty

Selenium Remote Control (RC) is a test tool that allows you to write automated web application UI tests in many programming languages against any HTTP website using any mainstream JavaScript-enabled browser. Selenium RC is a powerful and simple framework for running (scheduled or manually) automated UI centric regression tests for web applications / services. Here are few simple tips for Selenium RC java client. I used JUnit for tests. You can use NGUnit too.

1. To run the Java client you need to only have selenium-java-client-driver.jar (located in selenium-remote-control-1.0-beta-1/selenium-java-client-driver-1.0-beta-1 ) in your classpath.

2. The automatically generated java file (from Selenium Core) is likely to be defective. Ensure at least you have the following import statements:

import com.thoughtworks.selenium.*;
import junit.framework.*;
import java.util.regex.Pattern;

3. Ensure that the saved file name matches the generated class file name.

4. Remove the package statement or replace it with your own package statement. Initially just remove it.

5. Error: java.lang.UnsupportedOperationException: Catch body broken: IOException from cmd=setContext&1=SeleniumSTSanityTest.testSimpleThoughts -> java.net.ConnectException: Connection refused

Have you run the Selenium server?
Run the Selenium server like this:
java -jar selenium-server.jar

The selenium server is located in:
selenium-remote-control-1.0-beta-1/selenium-server-1.0-beta-1

6. Error: com.thoughtworks.selenium.SeleniumException: ERROR Server Exception: sessionId should not be null; has this session been started yet?

Ensure that the browser is in the PATH before running the server. On my linux box I did:
export PATH=$PATH:/usr/lib/firefox-2.0.0.6/

7. Error: com.thoughtworks.selenium.SeleniumException: Permission denied to get property Location.href

This happens on Firefox when a previous page wasn’t fully loaded before the next page was invoked (due to timeout or click() was used). The solution is to use *chrome instead of *firefox in setup. I use for firefox:
setUp(”http://blog.taragana.com/”, “*chrome”);

8. Timeout error
Increase the time in selenium.waitForPageToLoad() to 60000 (1 minute) or more.

9. How to run the generated java Test file?
This is really a JUnit question but in short you can add the following code in the generated file to get it running:

public static Test suite() {
	return new TestSuite(SeleniumSTSanityTest.class);
}

public static void main(String args[]) {
	junit.textui.TestRunner.run(suite());
}

Note: Replace SeleniumSTSanityTest with the name of your Java source file (without the .java extension)


Filed under Browser, Firefox, Headline News, Internet Explorer, Java Software, Javascript, Load Testing, Programming, Quality Assurance, Regression Testing, Safari, Stress Testing, Test Automation Framework, Web, Web 2.0, Web Services | | RSS 2.0 | Trackback this Article | Email this Article

You may also like to read

»How To Forward Local Host & Port via SSH Client To Remote SSH Server
»OpenSTA, Load & Stress Testing Tool, Alternatives on Linux
»Linux How To: How To SSH Without Password Authentication
»Ultimate Human Computer Interface - Mind Control: Research on Mind Control & Thought Reading
»3 Tips To Significantly Speed Up BSNL Dataone Broadband Connection
»Java SE Goes Beta (Feature Complete). Download Now.
»Firefox Productivity Enhancers for Everyone
»Linux / Fedora Core: How To Use rdiff-backup To Pull Backups
»Default Cisco Router Web Interface Setup Makes CISCO Routers Completely Vulnerable
»Interesting Articles & Announcements...
»Debugging Java Software using NetBeans and Sun Java Studio Enterprise 7
»Other causes of failing DNS lookup on Windows
»ExtJS Hack: Dynamic ComboBox & Remote On-Demand Loading With Local Filtering
»Microsoft Windows Genuine Advantage Alleged Spyware in Another Class Action Lawsuit
»How to Program the BlackBerry With J2ME

Looking forward to hear your thoughts.



Please enter the code shown below ( to verify that you are human ) before you click Submit Comment.

No. 1 method to ethically increase your blog traffic and reach.

Translate

Translate to EnglishÜbersetzen Sie zum Deutsch/GermanPřeložit do Čech/CzechOversætte hen til Dansk/DanishKääntää jotta Finnish/FinnishLefordít -hoz Magyar/HungarianÞýða til Íslenska/IcelandicTraducir a Latinoamericano Español/Latin American Spanishtagapagsalin sa Filipino/FilipinoTłumaczyć wobec Polski/PolishA traduce la spre Român/RomanianPrevesti za Srpski/Serbiantolmačiti v slovenski/SlovenianÖversätta till Svensk/SwedishChyfieitha at Cymraeg/Welshtercüme etmek -e doğru Türk/TurkishPrevesti to Hrvatski/CroatianПревеждам към Българин/BulgarianTraduzca al Español/SpanishTraduisez au Français/FrenchTraduca ad Italiano/ItalianTraduza ao Português/Portuguese日本語に翻訳しなさい /Japanese한국어에게 번역하십시오/Korean中文翻译/Chinese Simplifiedترجمة الى العربية/ArabicVertaal aan het Nederlands/DutchΜεταφράστε στα ελληνικά/GreekПереведите к русскому/RussianOversetter til Norsk/Norwegian中文翻译/Chinese TraditionalTraduzir a Língua portuguesa brasileira/Brazilian PortugueseReddo ut Latin/Latin

Taragana Network

»Ctrl-S
»Enterprise Blog
»Free Book on Eye Care by Natural Therapy
»Health Care Blog
»Hot Computer Jobs Blog
»Pet Care & Grooming News and Tips
»Phil Law Blog
»Taragana - Software Outsourcing
»The Angsuman Chakraborty Blog
»The Diabetes Cure Blog
»The Eye Treatment Blog
»The Stem Cell Blog
»Weblog Hosting Blog
"The important thing is not to stop questioning. Curiosity has its own reason for existing." - Albert Einstein