We need to run SWTBot test cases for a complex project, which consumes many upstream projects' P2 repositories.
I followed guideline in these locations:
https://wiki.eclipse.org/SWTBot/Automate_test_executionhttps://wiki.eclipse.org/Tycho/Target_PlatformBut still get dependencies cannot be resolved when running SWTBOT test cases. I'm wondering what's the general guideline to define target platform in pom.xml:
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<version>${tycho-version}</version>
<configuration>
<dependency-resolution>
<extraRequirements>
...
<requirement><type>eclipse-feature</type><id>some.feature</id><versionRange>0.0.0</versionRange></requirement>
...
<requirement><type>p2-installable-unit</type><id>some.bundle</id><versionRange>0.0.0</versionRange></requirement>
...
</extraRequirements>
</dependency-resolution>
</configuration>
</plugin>
I saw some Eclipse demo and actual projects, some doesn't define it at all; but some only include one or two features in the dependency.
I'm wondering what is the consistent way to define dependencies in tag <dependency-resolution>?
Should I define all features I'm building from source in my workspace + all features in my target runtime?
Should I define just all the plugins exactly same as my launch (which is validated by IDE no unresolved plugins)?
I tried both, still doesn't work.
Do we have a general rules how to define it in a systematic way so no guess around what should be depended on?
Thanks.