Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [amp-dev] Antwort: Development testing


Hi Jonas,

All of the "gen" test plugins are not actually designed to be included in the developer workspace. Instead they are to be boot-strapped into a separate runtime workspace.

re: the ascape tests, you will have compiler issues with that unless it is launched into a runtime that has the appropriate libraries in it. Create an Ascape gen project to see how that needs to be set up.

In any case, this is actually part of a deeper / more challenging issue.


The basic fundamental issue is that we need to generate the code at test time but define the test at build time. Iv'e spent a giant amount of time trying to solve this issue and there is quite a bit of infrastructure there that doesn't quite work in an automated way. And JUnit is totally brain dead about this -- not only does it use a lot of statics and annotations, but it simple can't handle dynamic execution of tests! Really JUNit is brain dead in lot's of important ways. I've really wanted to use TestNG, but it wasn't fully supported within the Eclipse build infrastructure. Could MoreUnit solve this dynamic loading? Otherwise I think we should see about what the status of TestNG is for Eclipse builds and think of going with that.

The other option that I've looked at is to use SWTBot to actually launch a workspace, create a project and generate the code. But this is unsatisfying as it requires UI, is slow, not very robust, etc.. (We should still do it though to make sure the builder UI is functioning.) 


On Feb 11, 2011, at 2:34 AM, Jonas Ruettimann wrote:

I understand that you create a new test-plugin for each plugin you write a test case for. Is this correct?

Usually, at our institute we use an Eclipse plugin called "moreUnit" (http://moreunit.sourceforge.net/) to create and manage tests. Do you know this tool? And what is your opinion about using it?

MoreUnit creates JUnit test cases in a separate source folder. But it generates exactly the same package structure. This has the advantage of test cases having access to package visibility members and methods. This allows better encapsulation and makes testing easier.


I've found these test plugins:

org.eclipse.amp.amf.acore.edit.test 
org.eclipse.amp.amf.acore.test 
org.eclipse.amp.amf.gen.ascape.test 
org.eclipse.amp.amf.gen.repast.test 
org.eclipse.amp.amf.gen.test 
org.eclipse.amp.amf.parameters.test 
org.eclipse.amp.axf.ide.test 
org.eclipse.amp.escape.testing.ide 

I've pulled from Git but I get compiler errors in org.eclipse.amp.amf.gen.ascape.test: 

org.ascape.runtime.swing cannot be resolved to a type 
org.ascape.view.vis cannot be resolved to a type 
com.jrefinery cannot be resolved to a variable 


Back to the top