I am new to GWT. I wanted to know effective way of testing widgets
like button, listbox, checkbox, anchor, textbox etc.
I have created a widget factory to create these widgets and attach
given listeners.
when i tried writing unit tests, i was facing problems with anchor
element's clicks. Before i jump into selenium to write these tests,
i wanted to know the effective way of testing these widgets. I want to
keep selenium only for testing UI Layout/styles/component placements.
The GWT has a test framework that is built on JUnit. Essentially you
create tests and you can then test your widgets as java objects in
your test case. The GWT test case will load up hosted mode under the
covers and run your tests in a GWT environment. A quick read over the
GWT docs should get you started:
http://code.google.com/intl/da/docreader/#p=google-web-toolkit-doc-1-...
On Jan 30, 4:10 am, GWTDeveloper <haru...@gmail.com> wrote:
> I am new to GWT. I wanted to know effective way of testing widgets
> like button, listbox, checkbox, anchor, textbox etc.
> I have created a widget factory to create these widgets and attach
> given listeners.
> when i tried writing unit tests, i was facing problems with anchor
> element's clicks. Before i jump into selenium to write these tests,
> i wanted to know the effective way of testing these widgets. I want to
> keep selenium only for testing UI Layout/styles/component placements.
I am using GWTTestCase only, but for elements like Anchor, i am not
able to find a way to fire a click. on button i could do that.
I want to know, whether GWT provides a way a programmatic equivalent
of the user clicking the anchor. It is there for Button.
On Jan 30, 3:23 am, danox <danoxs...@gmail.com> wrote:
> The GWT has a test framework that is built on JUnit. Essentially you
> create tests and you can then test your widgets as java objects in
> your test case. The GWT test case will load up hosted mode under the
> covers and run your tests in a GWT environment. A quick read over the
> GWT docs should get you started:http://code.google.com/intl/da/docreader/#p=google-web-toolkit-doc-1-...
> On Jan 30, 4:10 am, GWTDeveloper <haru...@gmail.com> wrote:
> > Hi,
> > I am new to GWT. I wanted to know effective way of testing widgets
> > like button, listbox, checkbox, anchor, textbox etc.
> > I have created a widget factory to create these widgets and attach
> > given listeners.
> > when i tried writing unit tests, i was facing problems with anchor
> > element's clicks. Before i jump into selenium to write these tests,
> > i wanted to know the effective way of testing these widgets. I want to
> > keep selenium only for testing UI Layout/styles/component placements.
Unfortunately, the event propagation system doesn't work in
GWTTestCase - so that means you can't send a click() message to a
Button and expect the registered ClickListeners to be notified. This
means you wouldn't be able to test clicking on an Anchor in a test and
verifying any resulting behavior, even if Anchor supported such a
method - which I'm not sure it does.
I'd recommend moving all the behavior out of any anonymous
ClickListeners and put them onto a "controller" or "presenter" object,
then unit test those classes using standard JUnit test cases. You
won't be able to verify the callbacks are wired to the correct object,
but in my experience that was easiest to check with some manual
exploratory testing, or some very basic Selenium tests to exercise the
system (without going into exhaustive scenario tests, since these were
easier to test with unit tests).
> I am using GWTTestCase only, but for elements like Anchor, i am not
> able to find a way to fire a click. on button i could do that.
> I want to know, whether GWT provides a way a programmatic equivalent
> of the user clicking the anchor. It is there for Button.
> On Jan 30, 3:23 am, danox <danoxs...@gmail.com> wrote:
> > The GWT has a test framework that is built on JUnit. Essentially you
> > create tests and you can then test your widgets as java objects in
> > your test case. The GWT test case will load up hosted mode under the
> > covers and run your tests in a GWT environment. A quick read over the
> > GWT docs should get you started:http://code.google.com/intl/da/docreader/#p=google-web-toolkit-doc-1-...
> > On Jan 30, 4:10 am, GWTDeveloper <haru...@gmail.com> wrote:
> > > Hi,
> > > I am new to GWT. I wanted to know effective way of testing widgets
> > > like button, listbox, checkbox, anchor, textbox etc.
> > > I have created a widget factory to create these widgets and attach
> > > given listeners.
> > > when i tried writing unit tests, i was facing problems with anchor
> > > element's clicks. Before i jump into selenium to write these tests,
> > > i wanted to know the effective way of testing these widgets. I want to
> > > keep selenium only for testing UI Layout/styles/component placements.
I have the similar kind mechanism used in my application.
Model-View-ControllerI am already doing similar to what you have suggested
in your article. Behaviour in controller.
But wanted to verify attachment of listeners and Widgets done in
WidgetFactory.
I will use selenium for this type of testing.
On Sat, Jan 31, 2009 at 10:08 PM, Daniel Wellman <etl...@gmail.com> wrote:
> Unfortunately, the event propagation system doesn't work in
> GWTTestCase - so that means you can't send a click() message to a
> Button and expect the registered ClickListeners to be notified. This
> means you wouldn't be able to test clicking on an Anchor in a test and
> verifying any resulting behavior, even if Anchor supported such a
> method - which I'm not sure it does.
> I'd recommend moving all the behavior out of any anonymous
> ClickListeners and put them onto a "controller" or "presenter" object,
> then unit test those classes using standard JUnit test cases. You
> won't be able to verify the callbacks are wired to the correct object,
> but in my experience that was easiest to check with some manual
> exploratory testing, or some very basic Selenium tests to exercise the
> system (without going into exhaustive scenario tests, since these were
> easier to test with unit tests).
> I've written about my experiences with testing GWT applications here,
> if it's helpful:
> On Jan 30, 9:20 am, hpgabbar <haru...@gmail.com> wrote:
> > I am using GWTTestCase only, but for elements like Anchor, i am not
> > able to find a way to fire a click. on button i could do that.
> > I want to know, whether GWT provides a way a programmatic equivalent
> > of the user clicking the anchor. It is there for Button.
> > On Jan 30, 3:23 am, danox <danoxs...@gmail.com> wrote:
> > > The GWT has a test framework that is built on JUnit. Essentially you
> > > create tests and you can then test your widgets as java objects in
> > > your test case. The GWT test case will load up hosted mode under the
> > > covers and run your tests in a GWT environment. A quick read over the
> > > GWT docs should get you started:
> http://code.google.com/intl/da/docreader/#p=google-web-toolkit-doc-1-...
> > > On Jan 30, 4:10 am, GWTDeveloper <haru...@gmail.com> wrote:
> > > > Hi,
> > > > I am new to GWT. I wanted to know effective way of testing widgets
> > > > like button, listbox, checkbox, anchor, textbox etc.
> > > > I have created a widget factory to create these widgets and attach
> > > > given listeners.
> > > > when i tried writing unit tests, i was facing problems with anchor
> > > > element's clicks. Before i jump into selenium to write these tests,
> > > > i wanted to know the effective way of testing these widgets. I want
> to
> > > > keep selenium only for testing UI Layout/styles/component placements.