Friday, August 31, 2012

Infragistics gives their Windows Forms controls some Coded UI Testing love

Jason Beres - Announcing Coded UI Support for Windows Forms

"I am pleased to announce that we will be shipping CodedUI Test support for major controls in the upcoming NetAdvantage for Windows Forms 12.2 release slated for early October 2012. If you are not familiar with CodedUI Tests (CUIT), here is a summary from MSDN:

Automated tests that drive your application through its user interface (UI) are known as coded UI tests (CUITs). These tests include functional testing of the UI controls. They let you verify that the whole application, including its user interface, is functioning correctly. Coded UI Tests are particularly useful where there is validation or other logic in the user interface, for example in a web page. They are also frequently used to automate an existing manual test.

What Visual Studio gives developers and testers is an easy way to record and playback tests, which can uncover bugs or regression in the UI behavior. The reason that Infragistics controls do not work ‘out of the box’ with CUIT is simple – the CUIT infrastructure in the .NET framework doesn’t know what to do when a complex control with a nested hierarchy of UI elements is being tested. So we had to do a lot of work to make sure out controls work as you would expect.

When you install Windows Forms 12.2, and you’ll see that the CUIT feature will involve two main parts:

  1. A plug-in for the CUIT Framework
  2. UI Automation (UIA) implementation for Infragistics controls

The plug-in for the CUIT Framework will be a separate assembly we provide that tells the CodedUI framework to use UIA for Infragistics controls instead of the standard and limited MSAA which is not robust enough to handle Infragistics controls. As a result of adding UIA capabilities to our controls we will be able to better support CUIT but at the same time update our Accessibility support.

The architecture looks like this:


When Does it Ship & What Do You Get?

This will ship with v12.2 in October, so we are about 1 month away from getting this into your hands. Over the last 18 months we’ve surveyed customers who have expressed interest in CUIT support, and prioritized the order of the controls we worked on and are shipping in V1 of this feature. In October you will see support for:

  • Grid
  • Combo
  • Editors (Text, Numeric, DateTime, etc)
  • Combo Editor
  • Tab (high risk)
  • Tab Strip (high risk)
  • Drop Down
  • Button
  • Scroll Bars
  • Progress Bar

Our plan is to roll out CUIT support for controls with each monthly Service Release, so you will continue to get updates until we achieve 100% coverage over the next couple of releases.  The next major controls in the roadmap are ToolbarsManager, Ribbon & DockManager.


While WinForms might not be all the sexy, it's still got a place and I have to say sometimes it's just easier and quicker than WPF. Seeing this, I thought it great that this kind of additional support was coming from a third party control suite like this.

No comments: