9

Has anyone got experience with the white framework?

www.codeplex.com/white ?

I'm thinking about using it for the next project for basic smoke tests of our windows client. I'd like some advice on articles or your own experiences. Thanks.

Dala
  • 1,869
  • 2
  • 20
  • 22

2 Answers2

8

I recently used white to build a few (20+) UI tests for a fairly complex WinForms app with plenty of UserControls, dynamically created and 3rd-party controls.

Here are my impressions:

  • Very easy and intuitive to work with.
  • Little or no quality issues.
  • It's a young project so there are some missing features, but they've got the basics covered.
  • Occasionally, if a control didn't have a known AutomationID, I was forced to use keystrokes to navigate to and manipulate a control ("tab, tab, enter" for example) which was kind of a bummer, but still very easy to do in white. This usually only happened with 3rd-party or dynamically generated controls.
  • White's recorder is helpful (and will actually generate code for you) but does often get confused by complicated or unusual controls. For that reason I'd recommend that you...
  • ...keep UISpy nearby so you can see the AutomationID of the controls you're working with.
  • And finally, if you're like me, you're hoping to set up some automated tests. This can be tricky since an automated test will usually be run by a CI tool such as CruiseControl which runs as a Windows service, which therefore has no active graphical environment (Windows session)...which white requires. The suggested way around this is to use a virtual machine. This is where I lost steam, as my tool chain had just grown too large for my purposes: CruiseControl->NAnt->NUnit->white + virtual machine.

Anyway, hope that's useful.

shaunmartin
  • 3,849
  • 2
  • 25
  • 26
  • 1
    I'd also add that the documentation is extremely poor at the moment, so it's not as easy as it could be. Hopefully it'll end up being documented here ;) – GraemeF Aug 02 '09 at 11:57
  • Regarding running the tests on the build server, an option I have used is to use windows auto-logon (http://support.microsoft.com/kb/315231) feature, so that the server is running a graphical windows session. – Tom E Aug 06 '09 at 13:14
0

I evaluated it recently, but had to reject it because it would not support the third party controls (janus grid) we were using.

David Thibault
  • 8,638
  • 3
  • 37
  • 51