MSSql MySql Python javascript PHP java DotNet Ruby Hackme Takeawy Code Twitter Facebook

The house of developers, A website to classify and rank developers

 
 
 
 
Country Rank: 1
World Rank: 9
Profile Viewed: 1822
Points: 12922
01 Jul 2010

About UI automation

A few years ago some people dreamed building an Screen Reader Tester, there are too many platforms (for win: Ranorex, Autoit,  White or  linux: LDTP, mago, etc), but also tools for automate web (iMacros, Selenium, etc) and people over there doing the same from adobe and others. About four years ago based on the problems of accessibility Microsft, Apple and Adobe debate the destiny of accessibility. That's when you start to realize how many tools can help us to do our programmes more accesible from a mozilla addon called WAVE to the UI Accessibility Checker, and the most important is that we can disarm this tools and generate new ones.


For me was an interesting thing cause I had to build my own bot, note that I don’t have disabilities but it’s still helping me to solve common problems or automating tedious work. I know many people use it just to playing poker take a look at coding the wheel or for playing games. But also have usefull uses for the industry, some of them ask me to build one to test their software. I just converted the XP in an entire bot. I think it's an interesting project to help the kids ask how the things work, and start to realize the differences beetween the architectures of the different operative systems. I know that many people says "GUI is evil, use the console", I have friends always saying that, and I'm sure they can automate the thing in other ways, like sending packages and doing misterious things (please better don't ask). But certainly it can help so many people, I see it, can improve their productivity and can dignify the work of the testers. Some guys really born again when someone takes the time to explain how a operative system work, and how can they easy build a tool like an Spy++ or intercept the system messages, understanding the accessible events and how they construct the aplications in the past.

For my bot project I start using c#. I know what you are thinking, Why you don't use c, c++ or Visual c++? I know it will be easier for some problems at low level, and including directly libraries of the OS but certainly you can do it in c# too. I started with the Global Mouse and Keyboard Library, but then that wasn't enough my bot not only have to reproduce ignoring the events of the OS, so i put a global hook to all the operative system. At first I only obtain the the handle of the object from point but then, after read the source of the appliations in codeplex I could read all the events putting the hook to a particular application or the entire OS. I wasn't easy and it was a great experience for me, I can build a lot of applications releated when i was researching all this stuff, also a difficult one was to read different memory spaces to obtain the nodes of an ActiveX TreeView control. I use this examples to teach threadding, delegates, events and so on to little budies.

I'm not a good writer but I'm very glad with what the WabLab's people are doing, so here it is little input. I hope you enjoy it.

Facebook Share Delicious Share Digg Share Google Buzz Share My Space Share Reddit Share Stumbleupon Share Technorati Share Twitter Share

Comments

Please, login or register to add a comment.