Saturday, November 23, 2013

HTML5 Robot 1.1 Released

HTML5 Robot 1.1 can be downloaded from this location: http://html5robot.com/downloads/

Java Changes

  • XPathUtils.findExtJsFileFieldByDefault(): Returns the XPath for getting an Ext JS File field assuming there is only one in the page
  • XPathUtils.findExtJsFileFieldByDefaultInDiv(String divId): Returns the XPath for getting an Ext JS field field inside the the given assuming there is only one
  • XPathUtils.findExtJsFileFieldByOccurrence(int index): Returns the XPath for getting an Ext JS field field by its occurrence within the page
  • XPathUtils.findExtJsFileFieldByOccurrenceInDiv(int index, String divId): Returns the XPath for getting an Ext JS field field by its occurrence within the given div
  • XPathUtils.findInputByClass(String name): Returns the input that has the class of the given value
  • XPathUtils.findInputByClassInDiv(String name, String divId): Returns the XPath for the input that has the given class in the given div
  • XPathUtils.findButtonByClass(String name): Returns the XPath for the button of the given class
  • XPathUtils.findButtonByClassInDiv(String name, String divId): Returns the XPath for the button of the given class inside the given div
  • XPathUtils.findButtonByTextOccurrence(int index, String text): Generates the XPath for getting the button with the given text’s occurrence based on the given index. For example: I want the second occurrence of the button with the text of OK.
  • waitUntilElementDoesNotExist(WebDriver driver, By by, int waitSeconds, int retries) changed to waitUntilElementDoesNotExist(WebDriver driver, By by, int timeout), (works faster now) and made to attempt every second until the timeout is reached. The old logic waited every total timeout for 2 times, which was not needed and too long.
  • waitUntilElementExists(WebDriver driver, By by, int waitSeconds, int retries) changed to waitUntilElementExists(WebDriver driver, By by, int timeout), (works faster now) and made to attempt every second until the timeout is reached. The old logic waited every total timeout for 2 times, which was not needed and too long.
  • Form4TestBase now works for Firefox, Internet Explorer, and Chrome instead of just Chrome. You don’t need to use a file detector, just sendKeys to the file input element.

Gwen Changes

  • Browsers now expand to fill the screen when the test starts
  • Added web element type of extjsfilefield, which is used for interacting with the file input fields on pages used for upload
    • extjsfilefield by text “foo”, Gets the file field associated with the button with the text “foo”
    • extjsfilefield by text “bar//foo”, Gets the file field associated with the button with the text “foo” in the div “bar”
    • extjsfilefield by occurrence “2″, Gets the second occurring file field in the page
    • extjsfilefield by occurrence “bar//2″, Gets the second occurring file field within the “bar” div
    • extjsfilefield by default method, Gets the file field assuming there is only one
    • extjsfilefield by default “bar//”, Gets the file field in the “bar” div
  • You set the file like the following: type “C:\\some\\path\\file.txt” into extjsfilefield by occurrence “2″
  • Added the locator expression type of “by class” to the following web elements, which matches against the CSS class attribute value:
    • input by class “foo”, Gets the input with the CSS class attribute of “foo”
    • input by class “bar//foo”, Gets the input with the CSS class attribute of “foo” in the div of “bar”
    • button by class “foo”, Gets the button with the CSS class attribute of “foo”
    • button by class “bar//foo”, Gets the button with the CSS class attribute of “foo” in the div of “bar”
  • Added web element type of extjspanel which is used for interacting with Ext JS panels, particularly when they are collapsible in which you need to click on them.
    • extjspanel by text “Some Text”, Gets the Ext JS panel with the header text of “Some Text”
    • extjspanel by text “bar//Some Text”, Gets the Ext JS panel with the header text of “Some Text” in the div of “bar”
  • Added web element support to the button for “by occurrence“. This was done because there are a lot of cases when you are dealing with several buttons all with the same text in a single page.
    • button by occurrence “2//New”, Gets the second occurrence of the button with the text of “New”
  • wait until element gone, (works faster now) now waits for the max time specified in the timeout and runs checked every second instead of every default timeout unit of time for 2 times.
  • wait until element exists, (works faster now) now waits for the max time specified in the timeout and runs checked every second instead of every default timeout unit of time for 2 times.
  • type “path” into extjsfilefield by text “Bar” now works for Firefox, Internet Explorer, and Chrome instead of just Chrome


No comments: