Automate Web-App implemented with vue.js and ag-Grid


#1

Hey folks,

I acutal try to automate an web-application implemented with vue.js (https://vuejs.org/) and ag-grid (https://www.ag-grid.com/javascript-grid-testing/#gsc.tab=0). I actual have trouble with locate the UI-elements and sync the test run, so that I don’t get error messages like this:

Unable to click on object ‘Object Repository/Page_Login/button_Login’ (Root cause: com.kms.katalon.core.webui.exception.WebElementNotFoundException: Web element with id: ‘Object Repository/Page_Login/button_Login’ located by ‘By.xpath: //button[count(. | //[contains(.,‘Login’)]) = count(//[contains(.,‘Login’)])][count(. | //[@type = ‘submit’]) = count(//[@type = ‘submit’])]’ not found)

Had anyone automated an application like this with Katalon and could share experiences or ideas?

Thanks very much,
Sven


#2

The most difficult part is to access the table and cell contents designed with ag-grid.


#3

The most difficult part is to access the table and cell contents designed with ag-grid.


#4

I have problem with vuejs too.


#5

I have problems too, i started to use this solution:

  1. in script view, i create steps do dynamically set values on a dynamic field
  2. First, create element:
    TestObject dynamicObject = new TestObject(‘Object Repository/Page/dynamicObject’).addProperty(‘name’, com.kms.katalon.core.testobject.ConditionType.EQUALS, ‘nome_do_solicitante’, true)
  3. Trigger click event:
    WebUI.click(dynamicObject)
  4. Reuse the dynamic field to other cenarios:
    dynamicObject = WebUI.modifyObjectProperty(dynamicObject,‘name’, ‘equals’, ‘prioridade’, true)
    WebUI.click(dynamicObject)

In this example, i’m setting the property NAME with a UNIQUE value in the web-page. In my case these are elements i was not directly reaching in the record mode

I hope it might help you!


#6

I have a solution that successfully data drives the Ag-Grid by using a variable based relative xpath object in the object repository.
If there is any interest I can share my findings.