Hi Jade,

I understand your confusion. 0.7.0 was designed in a way for Selenium APIs
to reuse the
caching mechanism in the Tellurium new Engine, thus, many options are
provided to fine
tune the framework behavior. But now, seems this is a bit over-design and
could cause a lot of
confusions. As a result, in 0.8.0, Selenium APIs will not be coupled with
Tellurium Engine
that is to say,

Selenium APIs:   CSS/XPath selector, no caching mechanism
Tellurium APIs:  UI module locating, caching mechanism

With that, useTelluriumEngine(boolean isUse) should be enough to switch
between Tellurium APIs
and Selenium APIs.

useTelluriumEngine(false) and useTelluriumApi(true) seem to use Tellurium
APIs, but turn off
the caching mechanism, which worked one week ago. With the latest update of
using UIDs, not
locators for Tellurium APIs, TelluriumAPIs must work with caching. That is
why you cannot do
that now.

We do appreciate you try out Tellurium new APIs and seems they worked for
most time. But
Tellurium APIs are still experimental and please switch back to Selenium
APIs if you run into
any problems. Please keep trying the Tellurium new APIs and reporting
problems, which is
the only way Tellurium Engine could be improved.

As a rule of thumb, the commands in the format of

useXXXX(boolean isUse)

for example useTelluriumEngine(boolean isUse), are defined for Groovy and
Java base test cases.

The counterparts of the same command is

enableXXXX()
disableXXXX()

in DslContext.

Hope this helps.

Thanks,

Jian

On Wed, Sep 8, 2010 at 9:37 AM, Jade <[email protected]> wrote:

> Hi Jian,
>
> Is there any documentation that specifies what the following options
> provide?
>
> useTelluriumEngine(true) (not available in TelluriumDataDrivenModule)
> vs enableTelluriumEngine() (available in TelluriumDataDrivenModule)
>
> vs. useTelluriumApi(true)
>
> My tests seem to work best when useTelluriumEngine(false) and
> useTelluriumApi(true) is set in the TelluriumDataDrivenTest subclass
> but I'm wondering what specific functionality that is turning off and
> on for my tests?
>
> Jade
>
>
> On Sep 8, 8:00 am, Jade <[email protected]> wrote:
> > In my groovy code of my data driven test (subclass of
> > TelluriumDataDrivenModule), I have the call:
> >
> > validate "DspaceLoginForm"
> >
> >                                 useTelluriumEngine(true)
> >                                 type "DspaceLoginForm.LoginEmail", email
> >                                 pause VireoTestConfig.getPauseTime()
> >
> > which results in this exception:
> >
> > groovy.lang.MissingMethodException: No signature of method:
> >
> org.tdl.vireo.webtest.datadriventests.module.DspaceLogonModule.useTelluriumEngine()
> > is applicable for argument types: (java.lang.Boolean) values: [true]
> > Possible solutions: useTelluriumApi(boolean)
> >
> > I'm using the latest jars as of Sept 7, 2010
> >
> > Jade
> >
> > On Sep 7, 7:12 pm, Jian Fang <[email protected]> wrote:
> >
> > > useTelluriumEngine(isUse) actually calls couple APIs under the hood,
> >
> > >http://code.google.com/p/aost/wiki/UserGuide070TelluriumBasics#useTel.
> ..
> >
> > > In 0.8.0, we may want to remove other options so that user only uses
> > > useTelluriumEngine(isUse) to change the framework behavior. If you can
> call
> > > useTelluriumApi(), you should be able to call useTelluriumEngine(isUse)
> as
> > > well, they are
> > > all defined in the test case.
> >
> > > Thanks,
> >
> > > Jian
> >
> > > On Tue, Sep 7, 2010 at 5:17 PM, Jade <[email protected]> wrote:
> > > > Since the tests are data driven, all of the code that manipulates the
> > > > html elements is in groovy. The only option is to set
> > > > useTelluriumApi() to false before calling these lines and then to
> true
> > > > afterwards but that's not the same as setting TelluriumEngine to
> > > > false. I can set the TelluriumEngine to false in the test code such
> as
> > > > public void testDataDriven() {
> >
> > > >                // If you are not using Tellurium Engine, you don't
> need to
> > > > use
> > > > cache.
> > > >                useTelluriumEngine(false);
> >
> > > > but then I can't turn it off only before calling the few lines of
> code
> > > > in my earlier post and then turn the tellurium engine back on again.
> >
> > > > What different behaviors will we see with useTelluriumEngine(false);
> > > > versus useTelluriumApi(false); ?
> >
> > > > Jade
> >
> > > > On Sep 7, 3:36 pm, Jian Fang <[email protected]> wrote:
> > > > > Well, it depends on what key events the Javascript handler responds
> to.
> > > > If
> > > > > you use Trump to record the UI,
> > > > > what is the respond attribute for the generated UI object?
> >
> > > > > Also, Tellurium new Engine may have event handling problem, simply
> switch
> > > > > back to Selenium to see if
> > > > > your key event works by calling
> >
> > > > > useTelluriumEngine(false);
> >
> > > > > Thanks,
> >
> > > > > Jian
> >
> > > > > On Tue, Sep 7, 2010 at 4:30 PM, Jade <[email protected]> wrote:
> > > > > > Hi again,
> >
> > > > > > Our forms use a lot of ajax. In order to change a value of a text
> box,
> > > > > > the user has to first click on the text box. That changes the
> text box
> > > > > > into an input box. Then the user changes the value and presses
> the tab
> > > > > > key to trigger ajax to save the value.
> >
> > > > > > I've tried simulating pressing the tab key with this code:
> >
> > > > > > // press the tab key which triggers saving the value
> > > > > >                        context.keyDown(inputUid, "\\9")
> > > > > >                        context.keyUp(inputUid, "\\9")
> >
> > > > > > but it's not moving the cursor to the next field thus the data
> changes
> > > > > > aren't saved.
> >
> > > > > > What's the correct way to simulate pressing the tab key?
> >
> > > > > > Here are my test values for the data driven tests:
> >
> > > > > >        useTelluriumEngine(true);
> > > > > >                useTelluriumApi(true);
> > > > > >                useCache true
> > > > > >                useCssSelector(true);
> > > > > >                useTrace(true);
> >
> > > > > > Jade
> >
> > > > > > --
> > > > > > You received this message because you are subscribed to the
> Google
> > > > Groups
> > > > > > "tellurium-users" group.
> > > > > > To post to this group, send email to
> [email protected].
> > > > > > To unsubscribe from this group, send email to
> > > > > > [email protected]<tellurium-users%[email protected]>
> <tellurium-users%[email protected]<tellurium-users%[email protected]>
> >
> > > > <tellurium-users%[email protected]<tellurium-users%[email protected]>
> <tellurium-users%[email protected]<tellurium-users%[email protected]>
> >
> >
> > > > > > .
> > > > > > For more options, visit this group at
> > > > > >http://groups.google.com/group/tellurium-users?hl=en.
> >
> > > > --
> > > > You received this message because you are subscribed to the Google
> Groups
> > > > "tellurium-users" group.
> > > > To post to this group, send email to
> [email protected].
> > > > To unsubscribe from this group, send email to
> > > > [email protected]<tellurium-users%[email protected]>
> <tellurium-users%[email protected]<tellurium-users%[email protected]>
> >
> > > > .
> > > > For more options, visit this group at
> > > >http://groups.google.com/group/tellurium-users?hl=en.
>
> --
> You received this message because you are subscribed to the Google Groups
> "tellurium-users" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<tellurium-users%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/tellurium-users?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"tellurium-users" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/tellurium-users?hl=en.

Reply via email to