3 of 3 people found this helpful
I have been conducting a pilot for automated testing. We have quite a number of service requests that are tedious to test and would like to be able to perform regression testing as we have had incidents of breaking components when changes were made. Please note we are using HEAT On Premise but the tool would still work for the cloud as well.
For the pilot I have been using Selenium. The goal being to emulate the user interface and not the underlying API although that is possible with the tool. Here are some issues I have encountered:
Issues with HEAT
- The pages are dynamic and therefore the IDs for the HTML tags can change. Still working through this issue.
- The usage of iFrames in the workspaces makes scripting a little harder.
- Many of the components are client side heavy making testing a little tedious. Its not just simply filling in the field.
Issues with Selenium
- Selenium offers an IDE to develop scripts but I could not get it to work consistently therefore I went to developing the scripts myself in Ruby.
- You need to know how to code to do this level of work.
In addition, we did contact HEAT Software about automated testing and they indicated they were using Selenium but we were unable to extract any details.
Hope this helps.
I've had one of our testers cast an eye over Selenium IDE and I/he have managed to get it to navigate through an end to end test using a command called waitForElementPresent and a target of each button. it was falling over on the selectFrame command each time otherwise. Not sure if this helps?
Thanks, your replies are very helpful.
No problem with the process Chris. It's typically the ids that cause issues. For instance, the id value stays consistent for a while then it changes breaking the script. Hard to run the tests when the ids keep changing and there is no other uniqueness to the elements. Has this been your experience?
Unfortunately not however it's early days yet. The login / logout script still works but that may not require the id's that are dynamic as you suggest