Testing web applications

Client Side Testing

Note to myself: unit testing is a great thing and I should do it more, I plan to do it more. But, unit testing is not enough...

What we need for web applications (or complex dynamic web sites if you prefer) would be something like this: the TEST program would act like a regular web browser, executing javascript and all the rest. The main difference with a web browser would be that the TEST program would be scriptable.

You could script it to log in, enter data into forms, perform search requests, check that the requested data appears on the screen, etc... You may even want to compare the generated HTML with a prerecorded excerpt. You may want to tolerate differences like white spaces and may be even non structural tags (ignore spans, styles attributes, etc...)

Of course, you'll want the TEST program to validate the XHTML output as well as the CSS styles.

Advanced testing would involve sending onclic events to specific objects on the page and see how the javascript behaves.

You'd have different scenarios you could run in sequence to fully test your application.

Even better: you could run multiple scenarios concurently (you'll need cookie isolated client threads for this) in order to stress load your application and record response times.

God, I gotta stop dreaming about it and find that gem...

Later:

I found a few potentially interesting tools here:

  1. Puffin Automation Framework. Open Source. [No longer exists]
  2. QEngine WebTest. Free / Commercial. [No longer exists]
  3. WAPT Web Application Testing. $ 250.
  4. WebKing. Commercial.
  5. OpenLoad. Commercial. [No longer exists]
  6. Web Performance Load Tester. 499 € +.
  7. iMacros. $30 - $499.
  8. eValid [No longer exists]

Mucho later:

IM sucks... (and so does email)

Over the last 6 months I have refrained as much as possible from using Instant Messaging, if it was not for scheduled conversations. I mean, IM is cool in a "netmeeting" kind of way. But having an IRC/MSN/Yahoo/ICQ/Whatever Messenger open all day, poping up alerts every 10 to 20 minutes, is definitely a major disturbance!

I got into arguments about this with friends. They were arguing that "you don't have to answer if you don't want to" and I was arguing that "you cannot focus on what you're constantly evaluating whether or not you're gonna reply to the latest interruption".

It's been hard to come to an agreement... but now... I have scientific evidence to back up my position! :>> You think you're too smart to be subject to attention disorder? Check those out:

Those actually articles talk about email, but email is only the ancient, slow, lightweight form of the Instant Messaging disturbance! ;)

I do actually tend to close my email client as well when I need concentration. I try to only open it every 2 to 3 hours or so. And even if I leave it open: I have turned of new mail alerts and sounds! You oughta try that someday ;) You wouldn't believe how much better you'll be able to focus!

Now, I still need to deal with that pesky phone which always rings at a bad time... and maybe I'll eventually get my work environment optimized for efficiency!

There's more than the code...

Oh well... I think it's been too long since I last read some great wisdom like the one on Joel on Software.

I read this really insightful peace today about all the important things beyond just the actual software code.

Here's a funny quote:

Human emotions can be really, really superficial. In particular people ridiculously overvalue aesthetics and beauty when evaluating products. It's one of the reasons iPods, and, for that matter, Keanu Reeves, are so successful.

...but the whole article is definitely a must read!

Of course, this so much applies to b2evolution as well... :-/

Sendo X Flashlight

There's this freeware app, called Torch, that allows you to buse your Series 60 phone as a torch/flashlight by blanking the screen and maintaining the backlight on until you exit the app.

Pretty interesting (you know when you drop your garage keys at night... :P), except the screen backlight isn't even remotely as bright as the the camera Flash LED on the Sendo X. That's what I would like: an app allowing me to turn on/off the camera Flash on demand!

The incredible thing is that apparently noone ever bothered to release something like this... although it's very likely to be just a simple API call... Well... I guess not enough Series 60 developers own a Sendo X... :'(

Quote of the day

"I wasn’t kissing her, I was just whispering into her mouth."
-Chico Marx