Uploaded image for project: 'eZ Publish / Platform'
  1. eZ Publish / Platform
  2. EZP-16598

Get rid of yui-tmp-0 when recording tests in selenium

    Details

      Description

      Some places inside eZ Publish, SeleniumIDE is not capable of recording tests correctly. Some places where the yui library is used, selenium is simply not able to address the element clicked. Instead, it will record actions like :
      click yui-tmp-0
      However, such events will not be playable afterwards.
      The workaround for this problem seems to add unique IDs to the elements in question. The problems occurs in several lists (like child lists, block list (ezflow). In such lists I would recommend to make the IDs based on the order they have in the list, not on node_id. This will also make the tests way more maintainable (not dependent on node ids)

      Below is a list of places where this is a problem.

      • Admin2 : clicking in a link in the Sub items list
      • eZ Flow : in block editing : moving blocks up/down, collapse/uncollapse a block, remove a block (patch attached)
      • eZ Flow/eZ webin : Sorting menu items ( /websitetoolbar/sort/2 ) : Entering numbers for priority, selecting rows ( for deletion )

        Activity

        Hide
        Vidar Langseid added a comment -

        selenium_block_edit.patch fix for ezflow block editing

        Show
        Vidar Langseid added a comment - selenium_block_edit.patch fix for ezflow block editing
        Hide
        Vidar Langseid added a comment -

        After some investigation, me and pa have found that adding ids everywhere to avoid seleniumIDE from recording yui_* events is not the right fix.
        In regards to the proposed patch, that looks ok since it ands id's relative the block number. However, this is not always feasible. In the child-list example, the solution would be to put node_id or something like that as id.

        The short-term-solution is to let seleniumIDE disregard ids when addressing elements
        The long-term-solution is to write a new ID locator for seleniumIDE where it only discards id's starting with "yui_"

        Show
        Vidar Langseid added a comment - After some investigation, me and pa have found that adding ids everywhere to avoid seleniumIDE from recording yui_* events is not the right fix. In regards to the proposed patch, that looks ok since it ands id's relative the block number. However, this is not always feasible. In the child-list example, the solution would be to put node_id or something like that as id. The short-term-solution is to let seleniumIDE disregard ids when addressing elements The long-term-solution is to write a new ID locator for seleniumIDE where it only discards id's starting with "yui_"
        Hide
        Patrick Allaert added a comment -

        Partially fixed in:
        ezflow (2.2): rev. 4583

        Show
        Patrick Allaert added a comment - Partially fixed in: ezflow (2.2): rev. 4583

          People

          • Assignee:
            Unassigned
            Reporter:
            Vidar Langseid
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated: