1

Is there any option to read data from an Excel on Selenium IDE? How does it work?

I have to call data from an Excel file (where data are stored).

2
  • This largely depends on the language that you're using. You will need to write code to retrieve and pass on that data. Commented May 8, 2013 at 16:18
  • @LyndonVrooman, Selenium IDE has only its own API as a language. Commented Jun 28, 2014 at 11:55

3 Answers 3

2

I don't think Selenium has this feature, and it wouldn't make sense anyway for many reasons.

On the other hand if you are using Java you can use Apache - POI to read in the data from excel in your unit test and then use that to do what you want to selenium testing suite. I just stumbled over this presentation a few minutes ago where someone does just that on slide 5.

For .NET here's how to read an excel file.

2

Selenium IDE can not easily do data-driven testing.

There are add-ons which can help; for example Sel Blocks, or datadriven.js.

However, I recommend you export your tests to a testing framework such as JUnit; that will make much more functionality available to you - not only data-driven testing, but many other techniques to make your tests more robust than is possible using only Selenium IDE.

1

You can easily perform data driven testing via Selenium IDE by the use of DataDriven and FlowControl plugins.

Please find detailed instructions in this Sauce Labs article.

Below is the quote from that article:

  1. Download the flowcontrol extension for IDE. (“Download” is a bit of a misnomer here, as the download link takes one to an HTML page. Simply copy/paste only the JavaScript contents of that page into a file named goto_sel_ide.js.)
  2. Download the 1.1 version of the includeCommand4IDE extension. (The just-released 1.2 version appears to have a serious bug.)
  3. Download the most recent version (0.2) of the datadriven.js extension. Install these 3 extensions in IDE via the Selenium Core extensionsfield (accessible via Options=>Options=>General). They must be specified in the order above!!!
  4. Re-start IDE so that all 3 extensions will get read in.
  5. Create an .xml file

     <testdata>
        <test linkText="How It Works" title="Sauce OnDemand: Cross browser testing with hosted Selenium testing in the cloud - Sauce Labs"/>
        <test linkText="Downloads" title="Sauce Labs Downloads"/>
        <test linkText="Pricing" title="Sauce Labs Pricing For Hosted Selenium in the Cloud"/>
       <test linkText="Support" title="Support: Sauce RC (Selenium RC) - Sauce Labs"/>
       <test linkText="Forums" title="Sauce Labs Forums"/>
       <test linkText="Blog" title="Selenium Testing? Do Cross Browser Testing with Sauce Labs"/>
       <test linkText="Flash/Flex Solution" title="Automate testing of your Flex and Flash Web Apps - Sauce Labs"/>
      <test linkText="Documentation" title="Documentation - Sauce Labs"/>
      <test linkText="About" title="About - Sauce Labs"/>
      <test linkText="Team" title="The Sauce Labs Team"/>
      <test linkText="News" title="Selenium News &amp; Events - Sauce Labs"/>
      <test linkText="Webinars" title="Webinars - Sauce Labs"/>
      <test linkText="Contact us" title="Support Contact - Sauce Labs"/>
      <test linkText="Service Status" title="Status - Sauce Labs"/>
    </testdata>
    
  6. linkText and title are variable names of my choice. You can use any names you want, and also any number of variables you want. The critical thing is that each container must contain all the data–input and output–for a single test case.

  7. View your .xml file in the browser to ensure that it does not contain any errors (only necessary if you did not use an XML editor to create the file).
  8. Utilize your .xml file via creating an HTML test case:

    loadTestData file:///Users/mamp/Desktop/BLOG/saucelabs-footer.xml open
    http://www.saucelabs.com while !testdata.EOF() nextTestData
    clickAndWait link=${linkText} verifyTitle ${title} goBackAndWait endWhile
    

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.