Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Jubula » Suitability of Jubula for web apps?
Suitability of Jubula for web apps? [message #792156] Mon, 06 February 2012 12:22 Go to next message
kevin zamora is currently offline kevin zamora
Messages: 7
Registered: February 2012
Junior Member
Hi,
I'm trying to determine if Jubula can test web applications.
The Jubula tutorials so far (Simple Adder, DVDTool) that I've gone through appear to be standalone Java apps.
So is Jubula the right tool for me? Cause, as I understand, if you need an AUT (application under test), the application would have to be the web browswer itself?? , because the browser is the conduit to get the web application. Can Jubula operate in this fashion?

If Jubula can do this are there any examples with the web? (I haven't completed all the tutorials yet so it may be in there).

Confused,
-Kevin
Re: Suitability of Jubula for web apps? [message #792593 is a reply to message #792156] Tue, 07 February 2012 01:50 Go to previous messageGo to next message
Alexandra Schladebeck is currently offline Alexandra Schladebeck
Messages: 1127
Registered: July 2009
Senior Member
Hi,

At the moment, we don't have any dedicated tutorials for web applications I'm afraid. The concepts for test specification are the same though, so if you've understood it for Swing, then you've understood it for web Wink

There is more information on testing HTML apps in the documentation here. Object mapping is very slightly different for web (you click instead of use a key combination) and there is information on starting web AUTs in this section.

HTH!
Alex
Re: Suitability of Jubula for web apps? [message #793372 is a reply to message #792593] Tue, 07 February 2012 22:58 Go to previous messageGo to next message
kevin zamora is currently offline kevin zamora
Messages: 7
Registered: February 2012
Junior Member
Whoa!

I read this statement "Unlike other toolkits supported by Jubula , real clicks and key events are not sent to HTML AUT's" .

If you can't send real clicks and key events - how do you expect to test anything? Doesn't make any sense to me. If you are going to test an html application, you need to be able to enter data and click buttons.

I really don't know if the application that I will be given is W3C compliant either. I don't know really anything about HTML but I thought I'd enter www.google.com into the suggested W3C validator h t t p://validator.W3.org and see what happens.

I got like 42 errors.

So I have very low confidence now that I could use Jubula if a website like google.com wouldn't even pass the validator (and having no errors is prerequisite). Would any website pass these days? Yahoo.com gave me 224 errors, wikipedia gave me 5 errors.
Re: Suitability of Jubula for web apps? [message #793553 is a reply to message #793372] Wed, 08 February 2012 04:29 Go to previous messageGo to next message
Alexandra Schladebeck is currently offline Alexandra Schladebeck
Messages: 1127
Registered: July 2009
Senior Member
Hi,

The driver that Jubula uses to execute web tests is Selenium, so it has the same advantages and disadvantages as Selenium does. As far as my understanding goes, the driver calls the methods that would be called if clicks were performed, and performs checks to make sure that the click could have been performed in the first place. I agree that it is much preferable to send real clicks (which is why we do it for all toolkits we've written ourselves), but faced with the choice of implementing our own web toolkit (which we had done once before in the past, with the experience that the browser-specifics are a bit of a nightmare...) or using an existing mature cross-browser driver with an active community, we went for the latter.

As for W3C conformity - the likelihood that non-W3C conform AUTs can be tested is high - it's not a question of us explicitly removing support for non-conforming AUTs, but should be understood as a statement of where we see our responsibilities for increasing and improving support for web components. In any given toolkit the conformance to standards is something that makes automated testing easier and so we tend to place higher priority on bugs that hinder testing of standards-compliant AUTs.

Based on all this, I'd recommend giving Jubula a try when you get your application and see whether they are a good fit.

Hope the information helps,
Alex
Re: Suitability of Jubula for web apps? [message #793817 is a reply to message #793553] Wed, 08 February 2012 11:01 Go to previous messageGo to next message
kevin zamora is currently offline kevin zamora
Messages: 7
Registered: February 2012
Junior Member
I was looking at Selenium for a couple of days and then I saw Jubula and went off in that direction because I liked the concept. But I don't think I can continue if jubula cannot allow me to send real data and clicks to the application. I'm sure if I told my company that Jubula pretended to enter data and perform clicks (somehow?) but didn't do it actually I would be laughed out the door. No respectable testing company could call that Quality Assurance testing....and the company would probably be opening themselves up to liability problems if they did.

I still don't understand your concept of what you're trying to achieve by this.....As I write this, the only thing that could kind of make sense to me is that you are actually copying the html code from the web page into your own private "sandbox" and testing the code inside the sandbox versus the actual application.

Just for fun, I typed your own website into the validator and got 3 errors...so you guys are pretty good to conforming to W3 standards.

Re: Suitability of Jubula for web apps? [message #794345 is a reply to message #793817] Thu, 09 February 2012 02:08 Go to previous messageGo to next message
Alexander Bosma is currently offline Alexander Bosma
Messages: 4
Registered: February 2012
Junior Member
Searching on the Eclipse site I find two phrases

1. Jubula provides automated functional GUI testing for Java and HTML applications.
2. Frames and IFrames are not supported.

Isn't this a contradiction? Because frames/iframes are widely used in Java applications?

When wil frames be supported?
Re: Suitability of Jubula for web apps? [message #794423 is a reply to message #794345] Thu, 09 February 2012 04:11 Go to previous messageGo to next message
Alexandra Schladebeck is currently offline Alexandra Schladebeck
Messages: 1127
Registered: July 2009
Senior Member
Kevin - you are misunderstanding the concepts. "Real clicks" use an API to simulate actions at the OS level so that the the computer itself can't distinguish whether it came from a tool or a keyboard. That's about as close as you're going to get short of having a mechanical arm doing the entry.

A normal click by a user in a browser would go via the mouse through various layers to the webserver, resulting in a request to that webserver. Selenium fires DOM events using Javascript therefore bypassing the mouse level. So, although the computer can tell the difference, the webserver can't. It's not pretending, it's just that the click doesn't actually get performed at the OS level. Like I said, there is a gap there (like what happens if the DOM event for text entry is fired without checking whether the text field can accept text) - but it's smaller than your post makes out. There are, for example, other frameworks which bypass the browser layer (and therefore the DOM) completely.

Maybe this information helps to clarify the matter. We're happy to help if you need more information that will help your testing and understanding, and are always interested in an open discussion, but please try to avoid incendiary statements.

Best Regards,
Alex
Re: Suitability of Jubula for web apps? [message #794424 is a reply to message #794423] Thu, 09 February 2012 04:11 Go to previous messageGo to next message
Alexandra Schladebeck is currently offline Alexandra Schladebeck
Messages: 1127
Registered: July 2009
Senior Member
Alexander - did you mean to ask about the prevalence of iFrames and Frames in HTML applications rather than Java? In which case, yes, they do come up relatively frequently and it's an area that we're looking into. We're aware that it's a missing feature and are looking into the best way to support such constructs. In case you were referring to JFrames in Java applications - these are implicitly supported when acting as a container and explicitly supported for e.g. wait for window actions.

Best regards,
Alex
Re: Suitability of Jubula for web apps? [message #794508 is a reply to message #794424] Thu, 09 February 2012 06:32 Go to previous messageGo to next message
kevin zamora is currently offline kevin zamora
Messages: 7
Registered: February 2012
Junior Member
Sorry, didn't intend to cause any incendiary thoughts - written prose and feelings are often at odds with one another. However, I was attempting to arrive at some clarity. I think some of the comments you made should be put into your documentation because, without them, I'm sure you will (or should) get questions from others as well.

I'm VERY HAPPY you clarified what is happening and now I am on a quest to see how other frameworks approach web automation testing. I wonder if Selenium itself would have been as honest and upfront as the Jubula team about their method of test? The DOM approach is an A- or "B" approach but if others are doing the same, then that is the standard. I suppose the gap could be filled by another tool (if any) to check if text could be entered at all.

Q1. Is that the only gap you are aware of? The entry of the text/click itself? left, right mouse, scrolling wheel mouse activites, etc., will be simulated via DOM events.

Q2. I understand you have a record and playback mode like Selenium (I know Selenium very little and I will be contacting them). Does the record and playback work the same way? That is, even though you record the human interaction, does it get translated to DOM events using JavaScript?

Q3. I know you probably are not supposed to answer any question like this but do you know of any tools that do enter the real keystrokes and mouse events? Maybe nobody does it?

Thanks for your answers. I think you can appreciate it is important for automation testers to know the limits of their tools, the caveats, etc.

Best regards,
Kevin
Re: Suitability of Jubula for web apps? [message #794609 is a reply to message #794508] Thu, 09 February 2012 08:47 Go to previous messageGo to next message
kevin zamora is currently offline kevin zamora
Messages: 7
Registered: February 2012
Junior Member
Q4. Since your html test execution is based on Selenium engine, is there any advantage to using yours over Seleniums?
Re: Suitability of Jubula for web apps? [message #795262 is a reply to message #794609] Fri, 10 February 2012 04:05 Go to previous messageGo to next message
Alexandra Schladebeck is currently offline Alexandra Schladebeck
Messages: 1127
Registered: July 2009
Senior Member
Hi Kevin,

Thanks for your comments and questions. Here are some answers Smile :

1. This is the only gap we're aware of, but bear in mind that pretty much all actions can be brought back to either clicks or text entry. It's more of a conceptual gap than one affecting specific actions. I did look for documentation or discussion on the Selenium side of this, but didn't find anything. If you find some interesting links, please feel free to post them.

2. We've only implemented the record and play mode for Swing and SWT/RCP (and even there, it's in although we think you shouldn't use it - more on this in this blog entry). Selenium does have a record and play mode, but you couldn't e.g. record a test with Selenium and replay it in Jubula.

3. I would be happy to answer this question if I had an answer. I don't know of a web testing framework that does real clicks (something to do with the difficulty of finding out component positions in a browser-independent and platform independent way I believe).

4. Selenium is pretty much "just" an API. The level of abstraction and additional tooling that the Jubula ITE offers are, in our opinion, an advantage. We're aware that what we support is currently a subset of what Selenium supports, but it's a work in progress.

If you find out more information, then feel free to add it here Smile

Best regards,
Alex
Re: Suitability of Jubula for web apps? [message #796917 is a reply to message #795262] Sun, 12 February 2012 15:26 Go to previous messageGo to next message
kevin zamora is currently offline kevin zamora
Messages: 7
Registered: February 2012
Junior Member
Hello Alex,

I played with html toolkit. After fumbling around, I need some help.

My first goal is to simply create one or more test cases that simply invoke a link on a webpage.

I got so far as to configure my AUT to correctly launch IE8 with a desired website (to test). I noticed when I did this it said "remote control" on the title bar and the website was directly underneath (IE8 was void of all the other standard navigation controls: url text box, tool bars, back, forward buttons, etc.)

I created a test case "Check URL" and then made a test suite out of it.....but it didn't object map to the html link very well (still got an error after I object mapped so it must be the wrong type of test case)....is "CHeck URL" reserved for testing the Browser itself?? That is what it looks like in the reference documentation.

So two questions:

1. What "reference" test case do I use to be able to click on a link on a webpage. Initially, I just want to know how
to do that. Afterward, I will want to do things like hover over an item, wait for a drop down, and then click one of
the drop down links.
2. Please clarify how the unbound_modules_html actions are used. If they are used to control the browser, how do you configure the AUT to start the browser so that the browser navigation controls are not hidden (like I saw with the "remote control" window).

Hope that is clear. I'm going to use one of your smiley faces Smile

-Kevin
Re: Suitability of Jubula for web apps? [message #798195 is a reply to message #796917] Tue, 14 February 2012 06:21 Go to previous messageGo to next message
Oliver Goetz is currently offline Oliver Goetz
Messages: 96
Registered: May 2011
Member
Hello,

to answer your questions:
1. To click on a link on a webpage I would simply use the ub_grc_clickLeft_single and map the link as the component to click on. To hover over an item you could use the module ub_grc_clickLeft and enter 0 for number of clicks. To select an entry of an optionally opening drop down menu or context menu that only appears when you hover over a link you would have to map the drop down menu and select an item from it. Otherwise you could use ub_grc_selectContextMenuEntry_byTextpath or one of the other modules from category Select->Context Menu. For more detailed info on all modules check this link.
2. The html-modules control the component of the AUT you are testing. Currently it is not possible to start the AUT without disabling the browser navigation controls. These steps are performed by the unbound_modules_html.

Regards
Oliver
icon5.gif  Re: Suitability of Jubula for web apps? [message #799164 is a reply to message #794424] Wed, 15 February 2012 09:24 Go to previous messageGo to next message
Alexander Bosma is currently offline Alexander Bosma
Messages: 4
Registered: February 2012
Junior Member
Confused
Could somebody explain to me why object mapping (Start object mapping mode) is not possible on the following internet page: www.ns.nl

Best regards,
Alexander
Re: Suitability of Jubula for web apps? [message #799170 is a reply to message #799164] Wed, 15 February 2012 09:29 Go to previous messageGo to next message
Alexandra Schladebeck is currently offline Alexandra Schladebeck
Messages: 1127
Registered: July 2009
Senior Member
Have you performed all the prerequisites for Object Mapping as described here?

HTH,
Alex
Re: Suitability of Jubula for web apps? [message #799753 is a reply to message #799170] Thu, 16 February 2012 04:19 Go to previous messageGo to next message
Alexander Bosma is currently offline Alexander Bosma
Messages: 4
Registered: February 2012
Junior Member
Hi,

If have performed all the steps.

But the technical name for the components do not appear in the unassigned technical names category.


See step 3 of 3.5.14 (see below)



2. Bring the AUT into focus by clicking on its titlebar.

........

For HTML AUT's :
o While the Object Mapping Mode is active, the AUT cannot be used.
o To collect a technical name for a component, click the component whose
name you want to collect.

3.In the Object Mapping Editor , the technical name for this component
will appear in the unassigned technical names category.




For some other internet site if done the same and there it is working! Do you have any idea why it's not working at www.ns.nl ?

Regards,
Alexander
Re: Suitability of Jubula for web apps? [message #800543 is a reply to message #799753] Fri, 17 February 2012 02:44 Go to previous messageGo to next message
Alexandra Schladebeck is currently offline Alexandra Schladebeck
Messages: 1127
Registered: July 2009
Senior Member
Hi,

So if I understand correctly, you can start the object mapping mode successfully, but after clicking, the technical names don't appear.

- Is this the case for all of the components on the page, or just some of them (if just some - which ones? Firebug may help to determine which components we're not recognizing)
- If it is the case for all of the components, do the logs give any information? Perhaps the website is blocking Javascript that we require to interact with it.

HTH,
Alex
Re: Suitability of Jubula for web apps? [message #802661 is a reply to message #800543] Mon, 20 February 2012 04:00 Go to previous message
Alexander Bosma is currently offline Alexander Bosma
Messages: 4
Registered: February 2012
Junior Member
Hi,

Non of the technical names appear, the logs don't give any information (there are no problems on the Problems tab).

How do I find out if the site is blocking Javascript? I don't know much about Javascript (I'm sorry). The only thing I know is that you can turn it on or off.

Best regards,
Alexander
Previous Topic:Count/Compare/Iterate in Table
Next Topic:How to test a browser embeded in the RCP application
Goto Forum:
  


Current Time: Wed Aug 27 21:28:36 EDT 2014

Powered by FUDForum. Page generated in 0.10557 seconds