Wednesday, 27 April 2011

Ruby: retrieve OLE object from HWND

I continue investigating the possibility to create custom auto-clicker. This time it's for my current project, so there'll be no blackjack. But anyway, the problems still appear and I have to resolve them. Just like this time when I've got the way to find Win32 windows by their specific attributes. Ruby contains magic gems like:
  • win32-api
  • windows-api
With their help I can easily get an access to Win32 API functions and call them from Ruby. But it works up to the moment when you encounter windows of Internet Explorer_Server class. Their children are HTML elements and they're not accessible directly via API. It's not a problem if we talk about browser. We can use Selenium or Watir to do all we need. But what if we talk about embeded Internet Explorer_Server windows which are placed on non-browser window? One of the ways is to get an access to corresponsing OLE object and hit it's properties and methods. Oh, good idea. But the main question is: how? All we know is just and HWND of this window. There's nothing impossible and this problem has the solution as well.

Monday, 7 March 2011

Selenium IDE: the way to test the locators

Selenium IDE is quite restricted solution and it's not recommended to use it as a solution for full scale test automation. But there're some areas where it helps a lot. Of course it can record sample tests and convert it into the code. That's the main Selenium IDE feature. But not the only one. Selenium IDE is very helpful when we want to test our locators and make sure they point to proper element. In this post I'll try to make step by step instructions how to do that.

Tuesday, 1 March 2011

Intro: Our own test automation tool

All the time I have to deal with some test automation tool. And all the time I have to live with the difficulties of each tool. If we have some huge vendor tool it's definitely something VBScript/JScript-based with all related restrictions. Or at least there're restrictions of programming language. It's critical because various wizards are not enough to make robust and reliable tests. Sometimes I have to make quite precise tuning to make my solution working the way I need. And even more, such wizards also consume memory and make overall work slower.

Monday, 28 February 2011

Selenium Camp. Impressions and thoughts

First Selenium conference in Europe took place this Saturday the February 26. It was a good chance to see how people use Selenium, some best practices, approaches. Of course, I had a chance to share my knowledge as well since I was one of the presentors.