It is already in the TelluriumConfig.groovy file, here is my file:
/**
* The global place to Tellurium configuration
*
* @author Jian Fang ([email protected])
*
* Date: Aug 2, 2008
*
*/
tellurium{
//embedded selenium server configuration
embeddedserver {
//port number
port = "4444"
//whether to use multiple windows
useMultiWindows = false
//whether to run the embedded selenium server. If false, you
need to
manually set up a selenium server
runInternally = true
//runInternally = false
//the log file for selenium server
// logFile = "selenium.log"
//profile location
profile = "/Users/xyz/firefox_profiles/ff3_winxp"
//user-extension.js file
userExtension = ""
}
//event handler
eventhandler{
//whether we should check if the UI element is presented
checkElement = true
//wether we add additional events like "mouse over"
extraEvent = true
}
//data accessor
accessor{
//whether we should check if the UI element is presented
checkElement = false
}
//the configuration for the connector that connects the selenium
client to the selenium server
connector{
//selenium server host
//please change the host if you run the Selenium server
remotely
serverHost = "localhost"
//server port number the client needs to connect
port = "4444"
//base URL
baseUrl = "http://localhost:8080"
//Browser setting, valid options are
// *firefox [absolute path]
// *iexplore [absolute path]
// *chrome
// *iehta
browser = "*chrome"
//user's class to hold custom selenium methods associated with
user-extensions.js
//should in full class name, for instance,
"org.tellurium.test.MyCommand"
customClass = ""
}
datadriven{
dataprovider{
//specify which data reader you like the data provider to
use
//the valid options include "PipeFileReader",
"CVSFileReader" at this point
reader = "PipeFileReader"
}
}
test{
//at current stage, the result report is only for tellurium
data driven testing
//we may add the result report for regular tellurium test case
result{
//specify what result reporter used for the test result
//valid options include "SimpleResultReporter",
"XMLResultReporter", and "StreamXMLResultReporter"
reporter = "XMLResultReporter"
//the output of the result
//valid options include "Console", "File" at this point
//if the option is "File", you need to specify the file
name, other wise it will use the default
//file name "TestResults.output"
output = "Console"
//test result output file name
filename = "TestResult.output"
}
exception{
//whether Tellurium captures the screenshot when exception
occurs.
//Note that the exception is the one thrown by Selenium
Server
//we do not care the test logic errors here
captureScreenshot = true
//we may have a series of screenshots, specify the file
name pattern here
//Here the ? will be replaced by the timestamp and you
might also want to put
//file path in the file name pattern
filenamePattern = "Screenshot?.png"
}
}
uiobject{
builder{
//user can specify custom UI objects here by define the
builder for each UI object
//the custom UI object builder must extend UiObjectBuilder
class
//and implement the following method:
//
// public build(Map map, Closure c)
//
//For container type UI object, the builder is a bit more
complicated, please
//take the TableBuilder or ListBuilder as an example
//example:
SelectMenu="org.tellurium.builder.SelectMenuBuilder"
ClickableRadioButton="org.tellurium.builder.ClickableRadioButtonBuilder"
}
}
widget{
module{
//define your widget modules here, for example Dojo or
ExtJs
// included="dojo, extjs"
included=""
}
}
}
On Oct 27, 12:10 pm, Jian Fang <[email protected]> wrote:
> Make sure you have the builder wired in TelluriumConfig.groovy file.
>
> uiobject{
> builder{
> //user can specify custom UI objects here by define the builder
> for each UI object
> //the custom UI object builder must extend UiObjectBuilder class
> //and implement the following method:
> //
> // public build(Map map, Closure c)
> //
> //For container type UI object, the builder is a bit more
> complicated, please
> //take the TableBuilder or ListBuilder as an example
>
> //example:
> SelectMenu="org.tellurium.builder.SelectMenuBuilder"
> }
> }
>
> On Tue, Oct 27, 2009 at 3:03 PM, super fan 911 <[email protected]>wrote:
>
>
>
> > I'm getting this error, see stack trace:
>
> > java.lang.ExceptionInInitializerError
> > at java.lang.Class.forName0(Native Method)
> > at java.lang.Class.forName(Class.java:164)
> > at org.tellurium.bootstrap.TelluriumSupport.class$
> > (TelluriumSupport.groovy)
> > at
> > org.tellurium.bootstrap.TelluriumSupport.$get$$class$org$tellurium
> > $framework$TelluriumFrameworkMetaClass(TelluriumSupport.groovy)
> > at org.tellurium.bootstrap.TelluriumSupport.addSupport
> > (TelluriumSupport.groovy:17)
> > at org.tellurium.test.java.TelluriumJavaTestCase.setUpForClass
> > (TelluriumJavaTestCase.java:22)
> > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > at sun.reflect.NativeMethodAccessorImpl.invoke
> > (NativeMethodAccessorImpl.java:39)
> > at sun.reflect.DelegatingMethodAccessorImpl.invoke
> > (DelegatingMethodAccessorImpl.java:25)
> > at java.lang.reflect.Method.invoke(Method.java:585)
> > at
> > org.junit.internal.runners.ClassRoadie.runBefores(ClassRoadie.java:
> > 49)
> > at org.junit.internal.runners.ClassRoadie.runProtected
> > (ClassRoadie.java:36)
> > at org.junit.internal.runners.JUnit4ClassRunner.run
> > (JUnit4ClassRunner.java:42)
> > at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run
> > (JUnit4TestReference.java:46)
> > at org.eclipse.jdt.internal.junit.runner.TestExecution.run
> > (TestExecution.java:38)
> > at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests
> > (RemoteTestRunner.java:467)
> > at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests
> > (RemoteTestRunner.java:683)
> > at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run
> > (RemoteTestRunner.java:390)
> > at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main
> > (RemoteTestRunner.java:197)
> > Caused by: java.lang.ClassNotFoundException:
> > org.tellurium.builder.SelectMenuBuilder
> > at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
> > at java.security.AccessController.doPrivileged(Native Method)
> > at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
> > at java.lang.ClassLoader.loadClass(ClassLoader.java:316)
> > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:280)
> > at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
> > at
> > org.codehaus.groovy.runtime.callsite.CallSiteClassLoader.loadClass
> > (CallSiteClassLoader.java:51)
> > at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
> > at
> > org.codehaus.groovy.reflection.ClassLoaderForClassArtifacts.loadClass
> > (ClassLoaderForClassArtifacts.java:43)
> > at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374)
> > at java.lang.Class.forName0(Native Method)
> > at java.lang.Class.forName(Class.java:164)
> > at java_lang_Class$forName.call(Unknown Source)
> > at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall
> > (CallSiteArray.java:40)
> > at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> > (AbstractCallSite.java:117)
> > at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> > (AbstractCallSite.java:125)
> > at org.tellurium.config.TelluriumConfigurator
> > $_configUiObjectBuilder_closure1.doCall(TelluriumConfigurator.groovy:
> > 113)
> > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > at sun.reflect.NativeMethodAccessorImpl.invoke
> > (NativeMethodAccessorImpl.java:39)
> > at sun.reflect.DelegatingMethodAccessorImpl.invoke
> > (DelegatingMethodAccessorImpl.java:25)
> > at java.lang.reflect.Method.invoke(Method.java:585)
> > 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:886)
> > at groovy.lang.Closure.call(Closure.java:280)
> > at
> > org.codehaus.groovy.runtime.DefaultGroovyMethods.callClosureForMapEntry
> > (DefaultGroovyMethods.java:2031)
> > at org.codehaus.groovy.runtime.DefaultGroovyMethods.each
> > (DefaultGroovyMethods.java:1188)
> > at org.codehaus.groovy.runtime.dgm$109.invoke(Unknown Source)
> > at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite
> > $PogoMetaMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:
> > 307)
> > at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.call
> > (PogoMetaMethodSite.java:63)
> > at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall
> > (CallSiteArray.java:40)
> > at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> > (AbstractCallSite.java:117)
> > at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> > (AbstractCallSite.java:125)
> > at org.tellurium.config.TelluriumConfigurator.configUiObjectBuilder
> > (TelluriumConfigurator.groovy:112)
> > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > at sun.reflect.NativeMethodAccessorImpl.invoke
> > (NativeMethodAccessorImpl.java:39)
> > at sun.reflect.DelegatingMethodAccessorImpl.invoke
> > (DelegatingMethodAccessorImpl.java:25)
> > at java.lang.reflect.Method.invoke(Method.java:585)
> > 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:44)
> > at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent
> > (AbstractCallSite.java:143)
> > at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent
> > (AbstractCallSite.java:151)
> > at org.tellurium.config.TelluriumConfigurator.config
> > (TelluriumConfigurator.groovy:191)
> > at org.tellurium.config.Configurator$config.call(Unknown Source)
> > at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall
> > (CallSiteArray.java:40)
> > at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> > (AbstractCallSite.java:117)
> > at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
> > (AbstractCallSite.java:125)
> > at org.tellurium.framework.TelluriumFramework.<init>
> > (TelluriumFramework.groovy:73)
> > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> > Method)
> > at sun.reflect.NativeConstructorAccessorImpl.newInstance
> > (NativeConstructorAccessorImpl.java:39)
> > at sun.reflect.DelegatingConstructorAccessorImpl.newInstance
> > (DelegatingConstructorAccessorImpl.java:27)
> > at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
> > at org.codehaus.groovy.reflection.CachedConstructor.invoke
> > (CachedConstructor.java:77)
> > at org.codehaus.groovy.runtime.callsite.ConstructorSite
> > $ConstructorSiteNoUnwrapNoCoerce.callConstructor(ConstructorSite.java:
> > 107)
> > at
> > org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallConstructor
> > (CallSiteArray.java:52)
> > at
> > org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor
> > (AbstractCallSite.java:192)
> > at
> > org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor
> > (AbstractCallSite.java:196)
> > at org.tellurium.framework.TelluriumFrameworkMetaClass.<clinit>
> > (TelluriumFrameworkMetaClass.groovy:11)
> > ... 19 more
>
> > this is my test class,
>
> > import org.junit.After;
> > import org.junit.AfterClass;
> > import org.junit.Before;
> > import org.junit.BeforeClass;
> > import org.junit.Test;
> > import org.tellurium.test.java.TelluriumJavaTestCase;
>
> > public class SampleGroovyJavaTest extends TelluriumJavaTestCase {
>
> > public SampleGroovyJavaTest() {}
>
> > �...@beforeclass
> > public static void initUi() {
> > }
>
> > �...@afterclass
> > public static void tearDownAfterClass() throws Exception {
> > }
>
> > �...@before
> > public void setUp() throws Exception {
> > }
>
> > �...@after
> > public void tearDown() throws Exception {
> > }
>
> > �...@test
> > public void testNothing() throws Exception {
>
> > }
>
> > }
>
> > I made sure that the JAR that contains the
> > "org.tellurium.builder.SelectMenuBuilder" class is in the class path.
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---