Automated Testing Tools with Uniface??

Author: adrian.gosbell@synapse-i.jp (Adrian Gosbell)

Here's a question.. we're planning on replacing our automated testing tools that we use to test Uniface. At the moment we use Testpartner which since it was sold to Microfocus, has been discontinued, so we have issues with things like 64 bit support, Windows 8 and so on. We also have some 'home brewed' tests, and they are proving to be a nightmare to support, plus I'd sooner we build Uniface features, not a testing tool. Anybody out there in customer land using testing tools, this is for repetitive tests? (screen scraping which is then played back. If so, what, and any details to share on what experiences using them have been, any details on why a particular product was chosen and so forth. Also happy to discuss on the phone, receive emails and so forth.

19 Comments

  1. Hi, I have to admit that I'm not really familiar with this topic, but having googled MSAA, I found the following??: http://msdn.microsoft.com/en-us/library/windows/desktop/hh848051(v=vs.85).aspx http://en.wikipedia.org/wiki/Microsoft_UI_Automation so should UIA (successor to MSAA) be used instead of MSAA or is it just a matter of concepts? Regards RogerW.


    Author: rogerw (roger.wallin@abilita.fi)
  2. An update on this project.  We have chosen the testing tool called Ranorex. http://www.ranorex.com/  We are now starting a project to implement MSAA with the specific goal to use these 'hooks' as the way to connect the tool to the Uniface GUI. Our intention is that we will work through the controls gradually and deliver the functionality as it becomes complete.  It will also be documented so it's possible for customers to use it for their own testing purposes. In theory, it does mean that other tools, besides Ranorex could be used, providing they can connect to the MSAA hooks.  


    Author: Adrian Gosbell (adrian.gosbell@synapse-i.jp)
  3. An update on this project. We've not made a decision yet. The delay is because we want to figure out a structural way to connect the testing tool to Uniface, and without any dependency on the testing tool vendor. (which was the case with the ‘old tools’, when where was some kind of .dll which contained mapping from the testing product to Uniface). We have the idea to leverage the Microsoft Active Accessibility (MSAA) functionality which is typically used as a utility for end users that are impaired in some way. Consider that it is a series of handles which a tool can use to know what it is (a command button), where it is on the screen (coordinates X:Y), what it’s state is (It is not pressed), what it can do (mouse hover causes a tool tip, pressing it does something, pressing and holding if for more than 5 seconds does something else, etc, etc). We decided to start this with a high level POC based on our shortlist, and it looks like this is achievable. To put the functionality into Uniface is estimated at about a man years worth of effort, so we need to see how we can do this effectively. For example it doesn't have to be done for all widgets, we could think about bringing in some contract help, etc, etc. But it needs to be done, so we need to figure that out. Watch this space.


    Author: Adrian Gosbell (adrian.gosbell@synapse-i.jp)
  4. Hi Adrian, Did you find an automatic testing tool? Kind regards. Rafa.


    Author: uniface8 (spanish_uniface@hotmail.es)
  5. Interesting timing, as we are in the final decision phase. I've talked about this at various user groups this year, so happy to share what is happening. The shortlist consists of: Ranorex (from Ranorex), Rational (from IBM), Silktest (from Microfocus)and Rapise (from Inflectra). The challenge (as always) is accessing the Windows handles which testing tools need in order to recognize them. Some of our controls are built in an entirely proprietary way because when delivered in the Uniface 5 era, they needed to behave in the same way on all of those GUI platforms we used to support ( OS/2 anybody?!). So an important part of the decision making process is how can we use the Uniface controls with the tools. (are there apis, how easy to use, etc, etc). We want to make a decision by the end of the calendar year, so I''ll share what the outcomes are. Its been an interesting experience to be on the end of the sales activity from the companies we worked through, and how serious they are in trying to sell us something. Some of the companies who did not make it on the shortlist (we started with about 15) really did not want to sell us anything..


    Author: Adrian Gosbell (adrian.gosbell@synapse-i.jp)
  6. rogerw said Hi, I have to admit that I'm not really familiar with this topic, but having googled MSAA, I found the following??: http://msdn.microsoft.com/en-us/library/windows/desktop/hh848051(v=vs.85).aspx http://en.wikipedia.org/wiki/Microsoft_UI_Automation so should UIA (successor to MSAA) be used instead of MSAA or is it just a matter of concepts? Regards RogerW.

    I asked the development team about this, and apparently MSAA is a subset of UIA (so UIA has more functionality, and more than we need for the auto testing outcome).  The first batch of MSAA (for testing) enhancements will be included in the MX05/Uniface 9.6.06 maintenance release, which is planned for this month (November 2014). 


    Author: Adrian Gosbell (adrian.gosbell@synapse-i.jp)
  7. Adrian Gosbell said An update on this project.  We have chosen the testing tool called Ranorex. http://www.ranorex.com/  We are now starting a project to implement MSAA with the specific goal to use these 'hooks' as the way to connect the tool to the Uniface GUI. Our intention is that we will work through the controls gradually and deliver the functionality as it becomes complete.  It will also be documented so it's possible for customers to use it for their own testing purposes. In theory, it does mean that other tools, besides Ranorex could be used, providing they can connect to the MSAA hooks.  

    Hi Adrian, We are also looking for a replacement to our ageing TestPartner/QADirector tool so we are very interested in this. Do you already have some documentation of what can be found in MX05 related to this? Will unifields be supported? Will the HTML widget be supported? ... Thanks for sharing!


    Author: dleveque (david.leveque@vision4health.be)
  8. dleveque said
    Adrian Gosbell said An update on this project.  We have chosen the testing tool called Ranorex. http://www.ranorex.com/  We are now starting a project to implement MSAA with the specific goal to use these 'hooks' as the way to connect the tool to the Uniface GUI. Our intention is that we will work through the controls gradually and deliver the functionality as it becomes complete.  It will also be documented so it's possible for customers to use it for their own testing purposes. In theory, it does mean that other tools, besides Ranorex could be used, providing they can connect to the MSAA hooks.  
    Hi Adrian, We are also looking for a replacement to our ageing TestPartner/QADirector tool so we are very interested in this. Do you already have some documentation of what can be found in MX05 related to this? Will unifields be supported? Will the HTML widget be supported? ... Thanks for sharing!

    We did not make as much progress with the 'productization' of the initial phase of this project as we wanted. (the work to extract ourselves from Compuware took more than we anticipated).  Under the hood, some widgets have been implemented (I think the edit box and the command button), but it's not documented (or supported) because we want to start using them ourselves with automated tests. You could call this our own verification and certification.  So you'll see that as we reach that point, the widgets that have the MSAA hooks available will be updated in the documentation.   I'm expecting that that we'll see the first phases in MX06.  Unifields and the HTLM Control should be included, the HTML control will have some other dependencies which we will have to work around first of all.  We'll keep you informed as the project progresses. 


    Author: Adrian Gosbell (adrian.gosbell@synapse-i.jp)
  9. Hi Adrian, Do you have a suggestion for automation tool other than Ranorex? One of my desktop project is running on Uniface 9.6 so I am looking for automation tool. I have shortlisted Ranorex but I am looking for more options. Thanks


    Author: Moses (moses.rozario@gmail.com)
  10. Moses said Hi Adrian, Do you have a suggestion for automation tool other than Ranorex? One of my desktop project is running on Uniface 9.6 so I am looking for automation tool. I have shortlisted Ranorex but I am looking for more options. Thanks

    We short listed IBM Rational, Silktest from Microfocus and Ranorex before selecting Ranorex.  We have not made the MSAA hooks publicly available yet, we're intending to begin this with Uniface 9.7.  Whatever tool you choose, make sure that there is a way for it to recognise all of the Uniface objects. If the tool has the option of MSAA, then it should be OK based on what we know, but we're not supporting this in the product beyond what we'll publish based on our own Ranorex experiences. 


    Author: Adrian Gosbell (adrian.gosbell@synapse-i.jp)
  11. This has just become a hot topic for us from our corporate HQ. Have any documented hooks been implemented yet, and if so in which versions?  regards,  Iain


    Author: Iain Sharp (i.sharp@pcisystems.co.uk)
  12. Iain Sharp said This has just become a hot topic for us from our corporate HQ. Have any documented hooks been implemented yet, and if so in which versions?  regards,  Iain

    Iain, if you search MSAA in the Uniface 9.7 documentation set, you'll get the latest details of what controls are supported. Expect more to be added over time.  Note that the switch to enable/disable is not at individual widget level, so there could be more controls enabled than are documented. There is a risk (admittedly a small one) that the ones that are not documented could change and affect existing MSAA functionality, whereas the ones documented should not change what has already been documented. 


    Author: Adrian Gosbell (adrian.gosbell@synapse-i.jp)
  13. A search on key word 'Accessibility' seems to bring the info as well, Please see: What's New in Uniface 9.7.01 Uniface 9.7: Changes in Configuration Settings Accessibility "Uniface supports MSAA for testing purposes only, and only for supported widgets. Currently, these are the Edit Box, Check Box, and Windows Command Button. Other widgets may return a technical name, but this name is subject to change. The technical names returned are not appropriate for screen readers and other accessibility tools." AccessibleNameSeparator


    Author: Arjen van Vliet (arjen.van.vliet@uniface.com)
  14. Since Microsoft Active Accessibility was meant for applications prior to Windows XP, would it be possible to use the MS UI Automation Framework to access Uniface Applications?

    The Windows Automation API consists of two technologies—Microsoft Active Accessibility and Microsoft UI Automation. Microsoft Active Accessibility is the legacy accessibility technology that was introduced as a platform add-in for Windows 95, while UI Automation is a newer, more capable technology that overcomes the limitations inherent in Microsoft Active Accessibility. https://msdn.microsoft.com/de-de/library/windows/desktop/dd561918%28v=vs.85%29.aspx

    Author: Daniel_Kurz (kurzster@gmail.com)
  15. Hi Daniel, I have asked around here at Uniface, the answer I got is: The accessibility we provided using MSAA should be still accessible by UI automation framework. The customers can use UI accessibility to access Uniface applications. The current accessibility parts are compatible between MSAA and UI automation.   I hope that answers your question. Theo


    Author: Theo Neeskens (tneeskens@itblockz.nl)
  16. To add to this, I have been asked the question of MSAA vs UI automation before, and when I talked to development about it and if we had done the 'right thing' in regards to implementation, I was told that MSAA should be considered a subset of UI Automation, what we needed for the testing tool 'hooks' are not legacy. 


    Author: Adrian Gosbell (adrian.gosbell@synapse-i.jp)
  17. I have been asked the following from our testing team - it looks related to the previous comments on automated testing, though that stopped a couple of years ao. For the RPA project we will be automating business processes that use FA-CALC. When automating processes which use applications such as Excel, Internet Explorer, etc the tool we use (UiPath) relies on those applications having been built to include the Windows UI Automation (WUIA) component. WUIA exposes an object model of applications’ user interfaces. For most applications if they use the standard windows controls (text boxes, poplists, etc) this is not a problem since Microsoft have embedded the WUIA calls in all of the standard controls. So, does the Uniface client application include non-standard windows controls? If so, have Uniface included WUIA when building them?


    Author: Neill (neill.king@travelport.com)
  18. Yes, besides standard Windows controls Uniface also includes non-standards controls. Uniface is older than MSAA/WUIA so the question "has Uniface included WUIA when building them?" is not valid. We are slowly ADDING WUIA to our non-standard controls. We are at point that many customers can use automated tests on their applications. Although sometimes you'll need to improvise a bit. I have no idea what RPA and FA-CALC are, and Google doesn't help much. Regards, Theo Neeskens


    Author: Theo Neeskens (tneeskens@itblockz.nl)
  19. A free RPA Tool from Edgeverve named AssistEdge Community Edition which is more useful for Students & Developers. https://www.edgeverve.com/assistedge/community/?cmpid=SOC_FBIN_communityedition_41018&source=Digital&subsource=Social_Pyrite Sample video here https://youtu.be/tzwQ5LNPIRI


    Author: Karthiksiddhu (karthiksiddhu99@gmail.com)