Seems the direct: "true" attribute in the UI module is not correct,
try the following UI module
public class CitrixHomePageUI extends DslContext {
public void defineUi() {
// Citrix home page Top Menus
ui.Container(uid: "CitrixHomePage", clocator: [tag: "div", id:
"supnav"]) {
UrlLink(uid: "LoginLink", clocator: [tag: "a", text: "Log in",
href: "/English/mycitrix/index.asp"])
Container(uid: "TopMenu", clocator: [tag: "div", class: "qmmc",
id: "qm1"])
{
UrlLink(uid: "MyCitrixLink", clocator: [tag: "a",
text: "My Citrix", position: "7", direct: "true", href: "/English/
mycitrix/index.asp?ntref=hp_util_US"])
UrlLink(uid: "GlobalSitesLink", clocator: [tag: "a",
text: "Global Sites", position: "6", direct: "true", href: "/global"])
}
UrlLink(uid: "LogOutLink", clocator: [tag: "a", text: "Log Out",
href: "/English/mycitrix/logout.asp"])
}
}
//Add your methods here
public void clickMyCitrix() {
click "CitrixHomePage.TopMenu.MyCitrixLink"
waitForPageToLoad(5000)
}
public void clickLogin() {
click "CitrixHomePage.LoginLink"
waitForPageToLoad(5000)
}
public void clickLogout() {
click "CitrixHomePage.LogOutLink"
waitForPageToLoad(5000)
}
}
public class HomePageSectionUI extends DslContext {
public void defineUi() {
ui.Container(uid: "HomePageSection", clocator: [tag: "div", class:
"qmmc", id: "qm0"]) {
UrlLink(uid: "ProductsAndSolutionsLink", clocator: [tag: "a",
text: "Products & Solutions", href: "*/English/ps2/products/
product.asp"])
UrlLink(uid: "DownloadsLink", clocator: [tag: "a", text:
"Downloads", href: "*/English/ss/downloads/index.asp"])
// TextBox(uid: "HomePageFlash", clocator: [tag: "embed",
type: "application/x-shockwave-flash", name: "flashpromo", id:
"flashpromo", src: "/site/resources/dynamic/homeLeftPromos/980
x290_SimplicityIsPower2.swf "])
}
}
//Add your methods here
public void clickProductsAndSolutions() {
click "HomePageSection.ProductsAndSolutionsLink"
waitForPageToLoad(5000)
}
public class LoginModuleUI extends DslContext {
public void defineUi() {
// Login Form
ui.Form(uid: "LoginForm", clocator: [tag: "form", id: "MiniLogin",
name: "LOGIN"], group: "true") {
Container(uid: "LoginSection", clocator: [tag: "div", class:
"primary"]) {
InputBox(uid: "UserName", clocator: [tag: "input", type:
"text", id: "userid", name: "userid"])
InputBox(uid: "Password", clocator: [tag: "input", type:
"password", id: "password", name: "password"])
Button(uid: "LoginBtn", clocator: [tag: "input", type:
"image", name: "loginbtn"])
}
UrlLink(uid: "NewUsers", clocator: [tag: "a", text: "New Users",
href: "/English/myCitrix/loginNewUser.asp"])
}
}
//Add your methods here
public void doMyCitrixLogin(String UserName, String Password) {
type "LoginForm.LoginSection.UserName", UserName
type "LoginForm.LoginSection.Password", Password
click "LoginForm.LoginSection.LoginBtn"
waitForPageToLoad(5000)
}
}
The other issue is that your login button is an InputBox object, which
does not
have a click method. I changed it to a Button object.
Thanks,
Jian
On Aug 19, 4:41 am, satyadev <[email protected]> wrote:
> then I tried for other linke i.e Login on same site even that also
> failing with following exception.
>
> com.thoughtworks.selenium.SeleniumException: ERROR: Element
> jquerycache={"unique":true,"locator":"#supnav default:span a[href=\/
> English\/mycitrix\/index.asp]:te_text(Log in)","optimized":"#supnav
> default:span a[href=\/English\/mycitrix\/index.asp]:te_text(Log
> in)","uid":"CitrixHomePage.LoginLink","cacheable":true} not found
> at
> com.thoughtworks.selenium.HttpCommandProcessor.throwAssertionFailureExceptionOrError
> (HttpCommandProcessor.java:97)
> at com.thoughtworks.selenium.HttpCommandProcessor.doCommand
> (HttpCommandProcessor.java:91)
> at com.thoughtworks.selenium.DefaultSelenium.click
> (DefaultSelenium.java:167)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at org.codehaus.groovy.reflection.CachedMethod.invoke
> (CachedMethod.java:86)
> at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234)
> at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061)
> at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892)
> at groovy.lang.DelegatingMetaClass.invokeMethod
> (DelegatingMetaClass.java:142)
> at groovy.lang.MetaObjectProtocol$invokeMethod.call(Unknown Source)
> at org.tellurium.dispatch.Dispatcher.invokeMethod(Dispatcher.groovy:
> 26)
> at org.codehaus.groovy.runtime.callsite.PogoInterceptableSite.call
> (PogoInterceptableSite.java:46)
> at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall
> (CallSiteArray.java:43)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> (AbstractCallSite.java:116)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> (AbstractCallSite.java:124)
> at org.tellurium.event.EventHandler$_click_closure6.doCall
> (EventHandler.groovy:147)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at org.codehaus.groovy.reflection.CachedMethod.invoke
> (CachedMethod.java:86)
> at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234)
> at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod
> (ClosureMetaClass.java:272)
> at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892)
> at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent
> (PogoMetaClassSite.java:66)
> at
> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent
> (CallSiteArray.java:47)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent
> (AbstractCallSite.java:142)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent
> (AbstractCallSite.java:150)
> at org.tellurium.event.EventHandler$_click_closure6.doCall
> (EventHandler.groovy)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at org.codehaus.groovy.reflection.CachedMethod.invoke
> (CachedMethod.java:86)
> at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234)
> at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod
> (ClosureMetaClass.java:272)
> at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892)
> at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call
> (PogoMetaClassSite.java:39)
> at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall
> (CallSiteArray.java:43)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> (AbstractCallSite.java:116)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> (AbstractCallSite.java:120)
> at org.tellurium.event.EventHandler$_processEvents_closure1.doCall
> (EventHandler.groovy:71)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at org.codehaus.groovy.reflection.CachedMethod.invoke
> (CachedMethod.java:86)
> at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234)
> at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod
> (ClosureMetaClass.java:272)
> at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892)
> at groovy.lang.Closure.call(Closure.java:279)
> at groovy.lang.Closure.call(Closure.java:292)
> at org.codehaus.groovy.runtime.DefaultGroovyMethods.each
> (DefaultGroovyMethods.java:1165)
> at org.codehaus.groovy.runtime.DefaultGroovyMethods.each
> (DefaultGroovyMethods.java:1141)
> at org.codehaus.groovy.runtime.dgm$87.invoke(Unknown Source)
> at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite
> $PojoMetaMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:
> 270)
> at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call
> (PojoMetaMethodSite.java:52)
> at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall
> (CallSiteArray.java:43)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> (AbstractCallSite.java:116)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> (AbstractCallSite.java:124)
> at org.tellurium.event.EventHandler.processEvents(EventHandler.groovy:
> 69)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite
> $PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:
> 266)
> at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent
> (PogoMetaMethodSite.java:51)
> at
> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent
> (CallSiteArray.java:47)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent
> (AbstractCallSite.java:142)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent
> (AbstractCallSite.java:162)
> at org.tellurium.event.EventHandler.click(EventHandler.groovy:146)
> at org.tellurium.event.EventHandler$click.call(Unknown Source)
> at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall
> (CallSiteArray.java:43)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> (AbstractCallSite.java:116)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> (AbstractCallSite.java:128)
> at org.tellurium.dsl.BaseDslContext$_click_closure3.doCall
> (BaseDslContext.groovy:221)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at org.codehaus.groovy.reflection.CachedMethod.invoke
> (CachedMethod.java:86)
> at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234)
> at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod
> (ClosureMetaClass.java:272)
> at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892)
> at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call
> (PogoMetaClassSite.java:39)
> at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall
> (CallSiteArray.java:43)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> (AbstractCallSite.java:116)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> (AbstractCallSite.java:128)
> at org.tellurium.object.UrlLink.click(UrlLink.groovy:17)
> at org.tellurium.object.UrlLink$click.call(Unknown Source)
> at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall
> (CallSiteArray.java:43)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> (AbstractCallSite.java:116)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> (AbstractCallSite.java:124)
> at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callSafe
> (AbstractCallSite.java:89)
> at org.tellurium.dsl.BaseDslContext.click(BaseDslContext.groovy:219)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at org.codehaus.groovy.reflection.CachedMethod.invoke
> (CachedMethod.java:86)
> at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234)
> at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061)
> at
> org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnCurrentN
> (ScriptBytecodeAdapter.java:77)
> at com.citrix.tellurium.ui.CitrixHomePageUI.clickLogin
> (CitrixHomePageUI.groovy:38)
> at com.citrix.tellurium.test.DemoCitrixPage.test1(DemoCitrixPage.java:
> 48)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at org.testng.internal.MethodHelper.invokeMethod(MethodHelper.java:
> 580)
> at org.testng.internal.Invoker.invokeMethod(Invoker.java:478)
> at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:617)
> at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:885)
> at org.testng.internal.TestMethodWorker.invokeTestMethods
> (TestMethodWorker.java:126)
> at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:
> 110)
> at org.testng.TestRunner.runWorkers(TestRunner.java:712)
> at org.testng.TestRunner.privateRun(TestRunner.java:582)
> at org.testng.TestRunner.run(TestRunner.java:477)
> at
> ...
>
> 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
-~----------~----~----~----~------~----~------~--~---