Test Automation vital to Independent Software Vendors

Posted by on October 31, 2012|Read full article

Many experienced software programmers's dreams are to be an Independent Software Vendors (ISV), which are evidenced by the best seller book "The 4-Hour Workweek", and "Micro-ISV: From Vision to Reality".

Being an ISV, the resource is limited, most likely only you (and your loyal partner if you are lucky) are to do all, in you spare time (don't ruin your family life). Working harder is not often enough, working smarter is the key.

Months ago, My brother, a dentist and his partners opened a big dental practice. They need a medical practice system, the best quote they got was $25000. My brother told me casually that the software not stable during the trial, but no other choices. I offered: I maybe can write one for you (I never did this kind of system before). I got my first release out within a week (spare time, about 20 working hours) for feedback, and in production within one month. Now they have been using it with satisfaction for 6 months. Just last week, one fellow dentist visited my brother practice and saw the system, he showed great interest and wanted to adopt it.

How? (My brother and I located are in different countries) the secret: test automation. To get their feedback, during the peak time, I released a new version pretty much each night. The automated tests prevent me from making mistakes. Seeing is believing.

  • TestWise test case stats
  • BuildWise CI build report (28 mins with database reset, that's quite a lot of tests)
  • StoryWise requirement coverage
I have two friends who built a very nice web application. During one discussion, they shared their slight concerns on observing more competitions, which is inevitable (Web applications means global competition). I said: "Keep improving your app. Don't worry until one of your competitor discovers TestWise."

Software Test Automation - Public Servants Losing Jobs - Disability Fund

Posted by on August 30, 2012|Read full article

These are seemly three totally unrelated topics, if you are not rush, read on.

We all know about 'government waste', it is all tax payers' money in the end. Not many tax payers knowing the scale of waste in bad IT systems, it is worse than pissing against the wall.

To be aboslutely objective, I will just quote the news headlines on some big local IT projects.

Queensland Health Payroll

Gold Coast Payroll

Brisbane City Council Payroll

It is not hard to imagine how much tax payers' money were wasted? Remember, payroll system is a only one kind of system. While Queensland is still in the middle of mining boom, the government is in huge debt. The largest sacking of public servants is about to happen next month: around 20000.

Also as a result, Queensland goverment is not willing to suport Natiaional Disability Fund.

As an IT professional, it is heart-breaking to see IT diasters contribute (again) to miserability to people lives, particularly disadvantaged ones.

We all heard of 'Test Driven XXX', though many haven't seen one working. Speaking of my experience, software test automation is the simplest, quickest, and most accurate way to measure whehter the vendor sofware is up to the job. Don't fall into those fancy talk and slides, just ask: "Show me how do automate test your application?"

Some might argue it is just your opinion. Check out Auditor-General's report on QLD Health Payroll: Pay system not properly tested. QLD Health payroll is a IBM-SAP project, now a simple question: "How many IBM rational test software sold to QLD government after this report?" An even simpler and logic question: "Are they being used?"

Automate Windows Native Apps with RFormSpec/AutoIT3

Posted by on July 12, 2012|Read full article

"Can TestWise test Windows native apps?" I received this question now and then even the person asked knew TestWise is for testing web applications.

My answer is: YES or NO. (I know it is sounding like a politician). First of all, testing Windows native apps is a lot harder, as there were no standard controls. Identifying some controls are particularly challenging or sometimes impossible. Using screen coords is not a good idea, as the test scripts are too delicate. To make it matter worse, assertion is very limited. For that reason, I prefer the term "automation" rather than "test automation" for native apps.

But there is still value doing automation for native apps. The technology I use is AutoIT3, a free and quite widely used windows scripting engine. AutoIT3 comes with Window Info tool, which can be used to identify control IDs or Control Coords

It is important to note that better using Window based Coord Mode, so that if have to control mouse in your test script, the test script still work when window moved.

I like Ruby, so I created a wrapper for AutoIT3. It is called RFormSpec, free and open-source. TestWise comes with RFormSpec, in many ways it works the same way: Page Object, Auto Complete and Refactoring. By using page objects, the automation script is quite maintainable.

For people know me well, I wouldn't talk something without real demo. Here is a Screencast: Automating Native App: HeidiSQL, and you can find a sample test project form_hedisql_ui_tests under samples (from v3.0.5).