I'd like to create a simple language for use in web automation testing. The language would be component of a commercial service and I'm examining the business viability of such a service.<p><i>TL;DR version</i>:
Would you benefit from a domain-specific language (DSL) that let you easily describe the interactions with a web site necessary to verify a given piece of functionality?<p>Code-up automation tests without needing to know how to code. More maintainable than using a visual recorder.<p><i>Longer version</i>:
Two current, common options for automation testing:<p>1) Use a WebDriver implementation in the language of your choice and code up your browser-based automation tests. Requires developer-level skilled people. Hard to learn, can be hard to maintain if not coming from a programming background.<p>2) Use a visual tool to record your interaction with a web site. Your interaction is translated into code similar in functionality to the above. Can be painful to maintain. Can be painful to record long, similar scenarios.<p>Proposed third option: a simple DSL for coding up your automation tests.<p>The DSL would be easy to write and easy to understand for the those not at a programmer-level of technical literacy. Think business analysts, product owners.<p>The DSL would be transpiled to code that utilises a WebDriver implementation to be executed. The user does not need to be aware of, or understand, the transpiled code.<p>Pros/cons of proposed DSL:
Pro: Relatively easy, anyone with an understanding of web page elements can do it
Pro: Factor out units of testing code, integrate modules together to represent user scenarios
Pro: Easier to learn than fully coding your own tests
Pro: (Can be) easier to maintain than using only a visual recorder
Con: Never as in-depth as writing your own code directly
Con: Not as easy as visual recorder<p>Thoughts?