My goal:
- Our customers can create new web tests.
- Our continuous integration server creates a test environment deployment; he must perform tests against him.
- The test can also be run in some other environment.
(Final acceptance testing should be done by the client, checking the fonts, etc., but it will be a great test before being accepted in our test environment. Customers can focus on other things than they do now.)
Usually some property (for example, the id text field) has changed or something else, and the tests will break through in a few weeks. It seems that the recorded tests often broke, so it's better to write a new one rather than trying to maintain and modify the old test.
Now I have found a whole new approach. Perhaps recording is not the right way. How about whether our customers could use human-readable language examples that the machine could understand and compile for web recording (with domain language, DSL). This is not science fiction, it has already been done, so read on. :-)
I tried using this automatic web testing framework:
- Visual Studio web test (clients cannot run)
- Selenium (works only with Firefox, our clients have IE)
- WatiN (.NET version of Watir, the recorder seems a bit buggy)
- HP Quick Test Pro (not easy to do new tests)
None of them really provided me with what I needed ... but Selenium is the closest.
-, , , :
- Avaa "OmaLomake"
- Syötä "Tuomas" kohtaan "nimi"
- Paina "Seuraava"
:
... , - . , , , .
DSL ?
Microsoft DSL Oslo MGrammar. , , . ( , ( ) Cobol Visual Basic.)
, - DSL MGrammar, Watin, Selenium:
http://www.codinginstinct.com/2008/11/creating-watin-dsl-using-mgrammar.html
, :
- . , , , ?
, ? ( ?)
DSL, , ? - ?