With the advent of the GUI came the promise, and sometimes the ability, of the user to work according to their own preferences and not necessarily to a rigid procedure. Yes, they do. Each script follows one path through a process, or on a smaller level, each script describes a sub-process in a modular manner. Modularity does a lot to help reduce the large numbers of test scripts required for some GUIs, but you can still only describe so many combinations of possible actions before you run out of time, people or money. At issue is whether or not you need to predefine a sequential order of actions for testing a particular process.
Some processes delivered via a web-based application are very predictable.
The user points and clicks on objects, but there is a clearly defined path of actions that must be completed before the process is considered complete. In the case of a predictable process delivered via a web application, test scripts can be used effectively. An example of this is ordering a product from a web site. Sure, exceptional situations will occur that also need to be anticipated and tested. These might include a lost connection, a timeout, or the customer aborting the order.