Ahoy all,
I'm Thomas Aylott. Board member of MooTools and UI Developer @ Cloudera,
Inc.

At the recent Dojo Developer Day we had some very productive discussions
about the current state of UI Testing, where we see it going and what we can
do to improve it in a cross-platform way. In this thread I hope to get
support for making the practical steps necessary actually accomplish
something useful quickly.


*It is my intention to help *
*standardize automated UI Testing *
*across all JavaScript environments.*

http://wiki.commonjs.org/wiki/UI_Testing

*The plan, in a nutshell…
*
*1) Standardize a low-level UI Testing API.*
Similar to how the CommonJS Testing API is intended to be a standard
low-level testing API that people can build high-level testing solutions on
top of.
e.g. click(x,y)  tap(x,y)

*2) Create wrappers to map existing UI Testing solutions to the new
standard.
*e.g. doh.robot, Selenium, Windmill, Syn.js

*3) Collaborate with platform vendors to get them to implement the low-level
API natively.
*e.g. RIM, HP/Palm, Android, iOS, Fake.app, Selenium

*4) Collaborate on an emulation UI Test Runner.
*Might be more likely than getting native UI Testing support on mobile
devices themselves.

*5) Collaborate on a higher-level UI Testing solution that uses the
low-level API.*
e.g. click(myButton)  twoFingerSwipe(myWidget)
…
*6) Profit! (j/k)*

—
I want (#1) low-level UI Testing API to be designed and agreed upon by the
community.
That's the only way that it'll ever get any traction.

I want everyone to be able to write simple tests that aren't entirely
implementation-specific.

More than anything, I want all frameworks and all individual UI Developers
to actually test their UIs.
I want testing to become an expected part of our jobs.
Eventually I want people to be hired based on their devotion and experience
with UI Testing and have that knowledge translate from one environment to
another and one job to another.

The low hanging fruit is with desktop browsers like IE & Firefox, but I want
us to be forward thinking and make sure that the low-level UI Testing APIs
are compatible with desktop, handheld, tablet, embedded (i.e. TVs), etc…

What is the best place to collaborate on these things?
Currently I have a wiki page up here:
http://wiki.commonjs.org/wiki/UI_Testing

How are you currently doing UI Testing?

Thanks!

— Thomas Aylott – SubtleGradient – MooTools – Cloudera —

Reply via email to