Page 1 of 1

Feature request : custom validation action

Posted: Tue Jun 11, 2013 10:46 pm
by reto2011
Hi,

I am new here. I'm am currently evaluating Ranorex. I am testing an application, which generates logs (window messages), that I am able to catch within any third party application. I would like to catch these logs automatically during a ranorex recording, and to create a custom validation action, that will validate the log entry. So, when I replay the recording module, the test module will test if my application logs the same messages as during the recording.
Is it possible to do that kind of validation with Ranorex ? If so, can someone give me a sample code that do that kind of validation ?

Thanks
Elisa

Re: Feature request : custom validation action

Posted: Wed Jun 12, 2013 4:12 pm
by Support Team
Hello Elisa,

You can use the 'Validate' button to pause the recording in order to validate some attributes in the recorded element.
I don't know how your application looks like and which attributes are available, but you can try to enable the "Text" attribute in order to validate the text of a specific item.
Please read the section "During Recording" in our user guide in order to get more information how to use the validation functionality in the recorder.
Please let me know if I didn't understand you correctly.

Regards,
Bernhard

Re: Feature request : custom validation action

Posted: Wed Jun 12, 2013 8:57 pm
by reto2011
Hi Bernhard,

thanks for the reply. The problem is the logs generated by my application are not visible elements. As far as I know , the "Validate" button only works to validate images or attributes of a UI element. But, these logs are not attributes of my application, they are just messages to notify others applications that an event occured. Besides, my application can log events at any moment. So, I can't know at what time, I have to pause the recording.

I would need a function OnNewLog() that would be called every time my application generates a new message. This function would pause the recording and create a new User Code action ValidateLog() and save the log entry in a string variable LogEntryX. So, for each generated log during the recording, we would need to create a new User Code Action and add it to the list of actions of the recording module.
When the recording is replayed, the ValidateLog() validation action should wait for the event NewLogEvent(). When this event is raised, it will compare the actual log entry with the variable LogEntryX saved during the creation of the recording module.

I would be very helpful, if it was possible to add a User Code Action automatically at the end of the list of actions in the recording module. The User Code Action should include a string containing the log entry. Is it possible to add a User Code Action automatically with some code ?

Thanks
Elisa

Re: Feature request : custom validation action

Posted: Thu Jun 13, 2013 2:29 pm
by krstcs
Ranorex is a Functional User Interface automation tool. So it isn't really designed for what it sounds like you are trying to do with it. It is designed to test the user interface, and therefore the visual aspects of the design.

However, you could add a listener to your test that subscribes to your messages, depending on how the system under test is constructed. I have never personally done it, so I couldn't begin to tell you how, but you might want to talk to your developers about it and see if they know a way.

The nicest part of Ranorex is that it is built on .NET, so anything you can do in .NET you can do in Ranorex.

Re: Feature request : custom validation action

Posted: Thu Jun 13, 2013 7:23 pm
by reto2011
Thank you for your suggestion, I will talk to the other developers in my team to see what they think about using a listener that subscribes to the messages.