From an entry point uncover all of the possible actions a user could take in a user interface. Actions are anything that causes the state of the application to change.
This could be used to automatically generate the plan space for use with graph analysis or working on planning problems (e.g. what are all the ways a user can accomplish a specified goal). You could use the state machine with a planning AI algorithm to generate optimal sequences of actions to achieve the specified end state.
Is this possible to do just by looking at code and not running the full browser session e.g. static analysis?
See also:
- The Fuzzing Book (specifically
GUICoverageFuzzer
which explores the user interface to generate a grammar and state machine) - Fuzzing
Links to this note
-
It seems possible to generate all states of a purely functional UI so that it can be analyzed and audited.