In my optionion gui-scripting is most valuable if it is combined with a gui recorder that translates the actions of a gui-user into a replayable script.
The problematic side of gui-scripting is that if the gui changes the scripts have to be updated, too.
if for example the logindialog changes and you have 150 tests that depend on login then in the worst case you have update 150 tests.
if you are fortunate you have modularized scripts with a central method "Login" that is used by all you test-scripts so only one script needs update.
but never the less don't underestimate maintanace-costs of automated test.
writing manual test-scripts is boring but using a script recorder leads to scripts that are hard to maintain. Often it is easier to record a new test then to update an existing :-(.
What i would do to automate html application tests using free software
- use Selenium for recording and generate c# code from it.
- use bdd - style human readable language to describe the testscenario you recorded (in order to ... as a ... i want ... : given ... when ... then....)
- use specflow to implement the bdd tests
- refactor the recorded/generated code into methods that fit into the bdd-scenario-steps. Common Steps(like the login example) can be shared by multible bdd-tests.
Note: I havenot done this solution yet but read a lot about and worked with two comercial recording products. If something is wrong with my selenium/specflow proposal please leave a comment.
If you know other free tools please update stackoverflow-s wiki most-useful-free-net-libraries