Opening a tab (ex: Financial dimensions in Purchase requisition line details)

  • Learn the tab (whether collapsed or not).
  • Verify Location, Window Text and Window Title properties.
  • Handcode using function DoAction().

Closing a tab (ex: Financial dimensions in Purchase requisition line details)

  • Learn the tab (whether collapsed or not).
  • Record a leftclick in an empty-section of the tab.
  • Verify Location, Window Text and Window Title properties for the tab.
  • Modify the recorded step by replacing DoLClick() by DoRClick().
  • Handcode the following keyboard inputs: down, down, down, enter.
  • Note: you can collapse all tabs by going down twice.

Locating an object in a child window with variable name

  • Learn the object.
  • Click on the object in the object tree in the main Rapise window.
  • If the Location field under Object has a variable name, click on ellipsis to open the Value Editor; replace variable section by appropriate regular expression; click on Advanced; choose Regular Expression; click OK.
    • Ex: «Purchase requisitions (1) - Purchase requisition: PR-002071, Data-driven/PurchReqTable/Tab/Pane/Tab/Pane/Pane/Financial dimensions» becomes «.*Purchase requisitions.*PurchReqTable/Tab/Pane/Tab/Pane/Pane/Financial dimensions».
  • Do the same for the entire text for the Window Text and Window Title fields under Window.
    • Ex: «Purchase requisitions (1) - Purchase requisition: PR-002071, Data-driven» becomes «.*Purchase requisitions.*»

  • Note: for the property fields under Window, once the change is made for one object, all objects learned afterwards with Window Text and Window Title matching the regular expression’s pattern will take on the appropriate value. This does not work for the Location field under Object. It may be worth learning a single object in a child window, making the changes, and then proceeding with the rest of the learning and recording to save time.

Attach a spreadsheet for data-driven testing:

  • Add the following line of code to the beginning of the main test script:
  • A bug in Rapise causes it to try to access lines in a spreadsheet that used to be filled but are now empty. To circumvent this, as a best practice, put the code to be repeated for each line of data in the following loop and precede by the following if statement:

Enter text in a textbox:

  • Click on the textbox, even if already selected.
  • Type text.

Enter text in a cell:

  • Click on the cell.
  • When the cell has become editable, click on the cell again.
  • Type text.

Scroll up or down:

  • Learn the «up» arrow or the «down» arrow.
  • Click on the learned button.
  • In code, repeat click as needed by copying the appropriate line.
  • Note: this may be necessary when controls cannot be identified if they are not on the screen.

Choose a value from a drop-down menu:

  • Learn the lookup button (arrow).
  • Click on the lookup button.
  • Learn the grid that appears.
  • Click the item to select from the grid.
  • Note: it is often preferable to type the value as some grids in a same group cannot be distinguished from one another.

Use the far-right button in the yellow workflow bar:

  • Learn button.
  • Click on button.
  • Use the DoSendKeys method with “DOWN” until the desired option is reached.
  • Use the DoSendKeys method with “ENTER”.
  • Note: this works more reliably within a subwindow (ex: Purchase Requisition) than in the main AX application window.

Selecting a grid cell that is also a link without opening the link:

  • Record a leftclick on the appropriate cell.
  • In the script, edit the step into a rightclick with the DoClickCell method.
  • Use the DoSendKeys method with “ESCAPE”.
  • Note: this occurs in the “Add a purchase order” window while creating a vendor invoice.

Slowing down or accelerating the test execution speed:

  • In the left pane in Rapise, select “Settings”.

  • Change the value beside “CommandInterval” to the number of milliseconds to wait in between each step.

 

 

 

 

More information can be found in «Testing Microsoft Dynamics Applications with Rapise» here.