Join the social network of Tech Nerds, increase skill rank, get work, manage projects...
  • Capybara method equivalent to findElements()

    • 0
    • 1
    • 0
    • 0
    • 0
    • 0
    • 0
    • 0
    • 516
    Comment on it

    In a web-application, we may interact with every element having some unique xpath or css. The elements were easily located with its attributes but the problem arises when each element in a list have same attributes.


    Lets suppose we have HTML


    <div class="gridRowData" itemprop="description">
    <li>Develop framework with Selenium using Page Object Model technique.</li>
    <li>Exposure at all stages of Software Development Life Cycle.</li>
    <li>Implement manual test cases in Selenium.</li>
    <li>Having good knowledge of manual testing and Automation testing at all levels of STLC.</li>
    <li>Proficient in the areas of Functional, Component, Integration, User Acceptance Testing.</li>
    <li>Test mobile applications on various iOS and Android devices.</li>
    <li>Prepare test cases, test scenario, test data.</li>
    <li>Prepare test environment to run the test cases.</li>
    <li>Co-ordinate with technical development team to maintain the Process chart and timelines.</li>
    <li>Co-ordinate with product stakeholders and understand the requirements.</li>
    <li>Perform regression testing using Selenium.</li>
    <li>Experience in Test Automation, Scripts Preparation and execution within the framework</li>
    <li>Good exposure in Database testing using Selenium.</li>
    <li>Good Expertise on Exploratory Testing using Domain Knowledge</li>
    <li>Ensure delivery from development team is on time. Co-ordinate for the same.</li>


    We have to iterate through every 'li' tag and we do not have a unique attribute value for each row. So we will use .all() capybara method to iterate every row and then print every row before moving to next row.


    def print_each_row
      @session.all(:xpath, "//*[@class='gridRowData']/ol/li").each do |a|
        puts "Row: #{a.text}"


    This will iterate through each li and then print the text associated with each li tag. This all() method in capybara is equivalent to selenium findElements() method.


 0 Comment(s)

Sign In

Sign up using

Forgot Password
Fill out the form below and instructions to reset your password will be emailed to you:
Reset Password
Fill out the form below and reset your password: