UI testing with Selenium in OutSystems Platform

UI testing with Selenium in OutSystems Platform

Hi everyone,

One question that pops up frequently regarding the OutSystems Platform is how to test the UI of our apps. There are several technologies that address this problem and Selenium is one of the most popular ones.

Selenium has been used internally at OutSystems and we have recently created a small how-to in our Knowledge Base to share our recommendations with everyone: How to do UI testing with Selenium in OutSystems Platform?

We hope you will find this document useful in your own quality assurance efforts! 

Nowadays, how are you testing the UI of OS apps at your company?

Thank you for the documentation.

When recording a script, there seems to be an issue with ajax refreshes. For example, when a value is put into one field, which causes a list to refresh, the script will not wait for it. How do you specifically handle things like this?
Hi Gerry,

You're right about recording not handling ajax refreshes. We have to add commands to explicitly wait for the list to refresh.

Ajax refreshes typically require us to use "WaitFor" commands from Selenium. To handle the scenario you're describing, what you could do is to add a WaitForTextPresent or waitForElementPresent right after putting the value in the field that triggers the Ajax refresh. You can wait for a specific text string to appear inside the list or for a specific element using a CSS selector or custom ID.

Check the "Creating a Selenium Test -> 3. Assure Synchronization" and "Best Practices -> Always avoid pauses" sections of the document where we mention this problem.