I just got back from vacation and tried out your changes yesterday.
I ran into some stability issues because I had maven pointing at your
latest snapshot.  I kept getting different results when maven
downloaded newer versions for me…. I had stuff that was working great…
then all of the sudden it broke, then magically started working
again.   I was pretty confused then I finally figured out what maven
was doing to me.   I should know better than that!

Overall it still seems pretty buggy…  I have a list of some of the
issues I ran into… Some of them look like they were fixed.  Some of
them I couldn’t dig into too deep because newer issues prevented me
from getting back to the same point in my test.

For now, I need to put this down and get a few features implemented on
my project.
I thought I would at least give you some feedback on what I ran into
with your latest changes.

Here is my list

1. Using the cache option, I was still running into the same error
that said I have 2 modules being found.  I used the validate method as
you previously suggested and found that it was because I had a
container ui object with a very generic locator.  It was only using
the tag table.  Since I had two tables in the DOM it was getting
tripped up.   I wouldn’t expect it to have issues since the locator I
was using in my method call was for a more specific element.  I was
doing something like:
type “loginSection.userName” , ”billyBob”

Note: loginSection was the table and username is a field in the table.

Since the locator should ultimately be looking for the username field
as a descendant of a table tag I wouldn’t think that it would be an
issue.  I would also think that I should be able to call getText
“loginSection” and it would be able to select the correct table
because I have the child elements defined.

Looking at it a second time… I just noticed the tables were also
nested that adds an extra curveball.   I guess I would expect that the
framework would return the same thing for a defined ui element
regardless of what you are using to go get it. (css/jquery/xpath/etc)

I found two workarounds for the issue…
- I can make the login section selector more descriptive using an id
or class attribute.
- you can also call useClosestMatch(true) that seems to work too



2.      I have anchor tag with a javascript event attached defined as a
UrlLink ui object. In my javascript code I do a window.location =
foo.jsp;  instead of getting routed to http://localhost:8080/myapp/foo.jsp
it takes me to http://localhost:52345/selenium-server/core/foo.jsp
This is one of the places I was burned by maven.  It was an issue in
selenium-server-1.0.1-te5-20100907.132631-5.jar.  It looks like
snapshots from 20100908 and 20100909 have it fixed.


3.      type command didn’t seem to work in a couple places but it did in
others  I looked at the ui object definitions in places they worked vs
where it did not work.  Nothing jumps out at me.  They are both pretty
basic and not in nested elements.

4.      I am also seeing a JSON.parse error when calling getText method.  I
skimmed a couple other posts with people having the same error, they
seemed unrelated.  I ran into other blockers with the newer version
and couldn't get my tests running  back to this point to really take a
look at it.


Sorry for the lack of detail on the last couple.  I need to get back
to those other features.
Let me know if you make some more progress.  I would like to give it
another look once you get more implemented and it is a little more
stable.

Thanks,
Jesse


On Sep 4, 12:38 am, Jian Fang <[email protected]> wrote:
> Couple bugs are fixed and please try the following snapshot or the latest
> one from our Maven repo.
>
> http://maven.kungfuters.org/content/repositories/snapshots/org/seleni...
>
> Thanks,
>
> Jian
>
> On Fri, Sep 3, 2010 at 11:47 AM, Jian Fang <[email protected]> wrote:
> > Hi,
>
> > I got most work done without refactoring Tellurium core and please try the
> > following snapshot:
>
> >http://maven.kungfuters.org/content/repositories/snapshots/org/seleni...
>
> > Be aware it is snapshot 1.0.1-te5 because of major changes.
>
> > Please use Tellurium Engine by calling
>
> > useTelluriumEngine(true);
>
> > and enable macro command in the TelluriumConfig.groovy file as follows.
>
> >       //the bundling tier
> >     bundle{
> >         maxMacroCmd = 5
> >         //false means  maxMacroCmd = 1
> >         useMacroCommand = true
> >     }
>
> > Be aware, this is a work in progress and syn.js is only used for the click
> > event for the timebeing.
> > Please let us know if you run into any problems.
>
> > Thanks,
>
> > Jian
>
> > On Tue, Aug 31, 2010 at 10:16 AM, Jian Fang <[email protected]>wrote:
>
> >> Sorry for the delay. I was sick for last couple days.
>
> >> I did merge the Tellurium IDE code to Engine, but it still takes some time
> >> to change some other piece of Engine
> >> code to make it work. I will try my best to get it done soon.
>
> >> Thanks for your patience.
>
> >> Jian
>
> >> On Tue, Aug 31, 2010 at 9:57 AM, Jesse <[email protected]>wrote:
>
> >>> Any luck merging that in??
>
> >>> Jesse
>
> >>> On Aug 26, 3:34 pm, Jian Fang <[email protected]> wrote:
> >>> > Sorry, I could not find any time last night. Will start merging tonight
> >>> and
> >>> > hopefully
> >>> > get everything done for you to try by the end of this weekend. The
> >>> change is
> >>> > pretty
> >>> > big.
>
> >>> > Thanks for your patience,
>
> >>> > Jian
>
> >>> > On Wed, Aug 25, 2010 at 4:36 PM, Jian Fang <[email protected]>
> >>> wrote:
> >>> > > Sure, I will change the event handler to use syn.js and merge that in
> >>> as
> >>> > > soon as possible.
>
> >>> > > See if I can find some time tonight.
>
> >>> > > Thanks,
>
> >>> > > Jian
>
> >>> > > On Wed, Aug 25, 2010 at 4:33 PM, Jesse <[email protected]>
> >>> wrote:
>
> >>> > >> If you have a lot of fixes to it, I would like to give it a shot.
> >>> > >> Our app is an extjs app so it is pretty heavy on javascript... If
> >>> you
> >>> > >> fixed 1/4 of the event firing issues that would help in a big way!
>
> >>> > >> Let me know when you get that merged.
>
> >>> > >> Thanks,
> >>> > >> Jesse
>
> >>> > >> On Aug 25, 1:22 pm, Jian Fang <[email protected]> wrote:
> >>> > >> > Yes, Tellurium Engine is still an experimental feature and we
> >>> expected
> >>> > >> > feedbacks
> >>> > >> > from users so that we can improve it. But very few feedback so
> >>> far,
> >>> > >> which
> >>> > >> > does not motivate
> >>> > >> > us to go faster. But the new Engine is our focus and once the Test
> >>> > >> Script
> >>> > >> > runner, telluriumWorks,
> >>> > >> > is in RC stage, we will go back to work on the Engine. If you are
> >>> in
> >>> > >> urgent
> >>> > >> > need, I can merge
> >>> > >> > the changes from Tellurium IDE back to the Engine project soon
> >>> (this
> >>> > >> week,
> >>> > >> > to be more specific).
>
> >>> > >> > Thanks,
>
> >>> > >> > Jian
>
> >>> > >> > On Wed, Aug 25, 2010 at 1:57 PM, Jesse <
> >>> [email protected]>
> >>> > >> wrote:
> >>> > >> > > I guess I didn’t realize that it was an experimental feature.  I
> >>> don’t
> >>> > >> > > think that was noted in the documentation.   I am actually
> >>> seeing a
> >>> > >> > > several issues (runny any browser) related to event firing while
> >>> using
> >>> > >> > > the tellurium engine.    Have you made any progress in the last
> >>> few
> >>> > >> > > weeks?  If so, I would like to pull down your changes and give
> >>> it a
> >>> > >> > > shot.
>
> >>> > >> > > IE test coverage is pretty important for our project… Currently
> >>> we are
> >>> > >> > > not really getting any from using Tellurium.   The grouping of
> >>> UI
> >>> > >> > > elements is pretty slick, but it makes the selectors too complex
> >>> for
> >>> > >> > > IE to handle quickly.   It’s kind of a deal breaker for us if
> >>> our
> >>> > >> > > tests don’t run well in IE.
>
> >>> > >> > > It feels like you are headed toward a working solution with the
> >>> > >> > > tellurium engine, but it isn’t quite ready for prime time yet.
> >>> It
> >>> > >> > > seems like your project has a wide umbrella of tasks/projects.
> >>>  Where
> >>> > >> > > does tellurium engine development fall on your priority list?
>
> >>> > >> > > If you can let me know, it would be helpful.
>
> >>> > >> > > Thanks,
> >>> > >> > > Jesse
>
> >>> > >> > > On Aug 12, 6:37 pm, Jian Fang <[email protected]> wrote:
> >>> > >> > > > Thanks, very interesting topic.
>
> >>> > >> > > > The Tellurium new APIs are still experimental and need more
> >>> work.
> >>> > >> The
> >>> > >> > > speed
> >>> > >> > > > improvement
> >>> > >> > > > comes from three factors:
>
> >>> > >> > > > 1) Locate whole UI module, cache it, and re-use it later,
> >>> which
> >>> > >> saves
> >>> > >> > > time
> >>> > >> > > > for locating
> >>> > >> > > > 2) Macro command to bundle multiple API calls into one call,
> >>> which
> >>> > >> saves
> >>> > >> > > > time for round trip to Selenium server
> >>> > >> > > > 3) jQuery selector as the default locator if not using UI
> >>> module
> >>> > >> cache.
>
> >>> > >> > > > Perhaps, you could try to use Macro command to reduce some
> >>> round
> >>> > >> trip
> >>> > >> > > time
> >>> > >> > > > and use cache to avoid
> >>> > >> > > > re-locating.
>
> >>> > >> > > > Initially, we thought jQuery event trigger mechanism should
> >>> work to
> >>> > >> > > simulate
> >>> > >> > > > user events, but if fact sometimes, they don't.
> >>> > >> > > > We are going to a Javascript library called syn.js to improve
> >>> that.
> >>> > >> Hope
> >>> > >> > > > that could solve many event fire issues
> >>> > >> > > > in Tellurium new Engine.
>
> >>> > >> > > > For the second issue, the error is really caused by the fact
> >>> that
> >>> > >> the
> >>> > >> > > Engine
> >>> > >> > > > found two matches of your UI module
> >>> > >> > > > in the runtime DOM. You could use the following command to see
> >>> more
> >>> > >> > > details:
>
> >>> > >> > > > validate(uid)
>
> >>> > >> > > > I am busy with Tellurium IDE, which include some improvement
> >>> of the
> >>> > >> new
> >>> > >> > > > Engine. (You are welcome to try Tellurium IDE and it
> >>> > >> > > > use Tellurium new Engine only to run tests, no more selenium
> >>> code).
> >>> > >> I
> >>> > >> > > will
> >>> > >> > > > merge the changes back to the new Engine project once I get
> >>> the RC1
> >>> > >> > > release
> >>> > >> > > > out.
>
> >>> > >> > > > Thanks,
>
> >>> > >> > > > Jian
>
> >>> > >> > > > On Thu, Aug 12, 2010 at 6:27 PM, Jesse <
> >>> [email protected]>
> >>> > >> > > wrote:
> >>> > >> > > > > I am trying to get our test running faster in IE… From
> >>> looking at
> >>> > >> your
> >>> > >> > > > > documentation and forum posts, it appears that your recent
> >>> release
> >>> > >> > > > > addresses many of the performance problems.
>
> >>> > >> > > > > So… I decided to get with the times and upgraded from an old
> >>> > >> 0.7.0-
> >>> > >> > > > > SNAPSHOT (from December) to the 0.7.0 release.  I am running
> >>> into
> >>> > >> a
> >>> > >> > > > > few troubles with the new engine & API.
>
> >>> > >> > > > > Let me make sure I understand all these new settings.  We
> >>> now have
> >>> > >> a
> >>> > >> > > > > useCssSelectors method which will make sure I use css
> >>> locators not
> >>> > >> > > > > xpath locators in selenium.  Not using xpath selectors
> >>> should help
> >>> > >> > > > > with IE slowness, but it is not quite a sliver bullet.
>
> >>> > >> > > > > Above and beyond that, we now have the useTelluriumApi
> >>> method.
> >>> > >>  The
> >>> > >> > > > > tellurium api is a reimplementation of selenium’s api.  Most
> >>> of
> >>> > >> the
> >>> > >> > > > > performance improvements come from using jquery to select
> >>> elements
> >>> > >> > > > > instead of selenium’s locators.
>
> >>> > >> > > > > There are a lot of options/settings, just wanted to make
> >>> sure I
> >>> > >> got it
> >>> > >> > > > > right….. feel free to correct me!
>
> >>> > >> > > > > After the upgrade and playing around with the config options
> >>> this
> >>> > >> is
> >>> > >> > > > > what I am running into:
>
> >>> > >> > > > > My test runs great with the selenium API but once I switch
> >>> to the
> >>> > >> > > > > Tellurium API… I run into a couple of problems.  One is the
> >>> > >> keyType
> >>> > >> > > > > command.  It does not seem to actually fire the keyDown,
> >>> keyPress,
> >>> > >> > > > > keyUp events in the browser.  I can see the events in the
> >>> logs…
> >>> > >> but
> >>> > >> > > > > the javascript events never fire in the app.  (nice job on
> >>> the
> >>> > >> > > > > improved logging btw!  Very helpful)
>
> >>> > >> > > > > I can wrap the the keyType like so:
> >>> > >> > > > >        useTelluriumApi(false)
> >>> > >> > > > >        keyType “locStr”, “text”
> >>> > >> > > > >        useTelluriumApi(true)
>
> >>> > >> > > > > The workaround gets the events to fire, but that causes IE
> >>> to run
> >>> > >> > > > > really slow again..
>
> >>> > >> > > > > here are my logs, you can see the clock times are pretty
> >>> bad.
> >>> > >> > > > > TE: Name: useTeApi, start: 1281642600893, duration: 31ms
> >>> > >> > > > > TE: Name: useTeApi, start: 1281642600893, duration: 31ms
> >>> > >> > > > > TE: Name: mouseOver, start: 1281642600940, duration: 8427ms
> >>> > >> > > > > TE: Name: mouseOver, start: 1281642600940, duration: 8427ms
> >>> > >> > > > > TE: Name: fireEvent, start: 1281642609367, duration: 8412ms
> >>> > >> > > > > TE: Name: fireEvent, start: 1281642609367,
>
> ...
>
> read more »

-- 
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