Hi,
I have successfully implemented a toolkit plugin to extend concrete component 'Application'. I am able to see my new action added under 'Application' component while adding 'New Test Step'. Below is my ComponentConfiguration.xml content -
<concreteComponent type="AROLauncher" hasDefaultMapping="true">
<extends>guidancer.concrete.GraphicApplication</extends>
<testerClass>org.eclipse.jubula.rc.swing.tester.AppTester</testerClass>
<action name="CompSystem.LaunchARO" >
<method>startApplication</method>
</action>
</concreteComponent>
I am able to add this new action as a test step for a test case. However, when I execute the test suite, the action added by me fails citing below error -
2013-11-29 20:45:27.112 [Connection.ReaderThread:Socket[addr=LAP932.persistent.co.in/10.77.235.2,port=50290,localport=50305]] ERROR o.e.j.r.c.c.AbstractCapTestCommand - implementation class method not found
java.lang.NoSuchMethodException: No such accessible method: startApplication() on object: org.eclipse.jubula.rc.swing.tester.SwingApplicationTester
The error is pretty much clear that it could locate my method. However, I am not able to figure out the reason for this. Below are the contents of my tester class -
package
org.eclipse.jubula.rc.swing.tester;
import
java.awt.Rectangle;
import
org.eclipse.jubula.rc.common.driver.IRobot;
import
org.eclipse.jubula.rc.common.exception.StepExecutionException;
import
org.eclipse.jubula.rc.common.tester.AbstractApplicationTester;
public
class AppTester
extends AbstractApplicationTester{
void startApplication()
throws StepExecutionException{
rcExecuteExternalCommand(
"C:\\Program Files\\Notepad++\\notepad++.exe", 0,
true, 5000);
}
public String[] getTextArrayFromComponent() {
//
TODO Auto-generated method stub
return
null;
}
public Rectangle getActiveWindowBounds() {
//
TODO Auto-generated method stub
return
null;
}
protected IRobot getRobot() {
//
TODO Auto-generated method stub
return
null;
}
public
void rcKeyStroke(String modifierSpec, String keySpec) {
//
TODO Auto-generated method stub
}
protected Object getFocusOwner() {
//
TODO Auto-generated method stub
return
null;
}
protected
int getEventCode(int key) {
//
TODO Auto-generated method stub
return 0;
}
protected Object getActiveWindow() {
//
TODO Auto-generated method stub
return
null;
}
}
Is anything wrong in above code? I looked at xml schema definition for concreteComponent and there is not testerClass child element defined for it. Could that be the reason? Should I change it to toolkitComponent?
One more thing is that, I haven't provided any implemention for IAdapterFactory? Do still I need to provide it in my case, as I just want to lauch an application using my extension and not looking for providing support for any custom UI component?
Please let me know. Thanks in advance for your help.
Thanks and Regards.
Yuvraj
DISCLAIMER
==========
This e-mail may contain privileged and confidential information which is the property of Persistent Systems Ltd. It is intended only for the use of the individual or entity to which it is addressed. If you are not the intended recipient, you are not authorized to read, retain, copy, print, distribute or use this message. If you have received this communication in error, please notify the sender and delete all copies of this message. Persistent Systems Ltd. does not accept any liability for virus infected mails.