Hi Carsten, did you manage to solve your problem ?

Regards, Gaetan

On 6/21/24 14:45, Gaetan wrote:
Hi,

I created a public gitlab account account so that i can help you, with this address : (mr.plop.p...@netcourrier.com) If you feel confortable with it, you can share with me the repo link (read only, of course).

Best regards
Gaetan

PS: i don't know if there are any community rules for this kind of cases ?

On 6/21/24 11:17, Carsten Schinzer wrote:
Hi Gaetan,

Thanks to get back to me. I see no change - all the things you applied I already did. I also added your test case to the code and ran that locally - the test is obviously not found.

It might have to do with the fact that I prefer JUnit 5 because of its advanced parametrized testing features?
I can give you access to the code repo if you have a Gitlab account.

When running tests locally, I do not see any test reports for my classes, so this is the indicator I am using.
Also, I have test cases that should fail with the current code state.

So situation is unchanged unfortunately.
Warm regards


Carsten

Am 20.06.2024 um 16:58 schrieb Gaetan <gaetan.chabous...@nereide.fr>:

Hi Carsten, do you have any updates on your case ?

Regards,

Gaetan

On 6/11/24 09:58, Gaetan wrote:
Hello Carsten.

I set up a very small example plugin that i tested myself localy. Could you please reproduce the steps below ?

- get ofbiz framework from apache repo (https://github.com/apache/ofbiz-framework)

    - checkout trunk on ofbiz framework

- get example plugin and set it up inside plugins (https://github.com/gtchaboussie/ofbiz-demo-test-plugin)

at the ofbiz root location, run `./gradlew test`. The build should fail (this means the test in the plugin is runned) with this error:

```

org.test.TestClass > test FAILED
     java.lang.AssertionError at TestClass.java:9

```

This gives you a template or example of a unit test.

As you can see, you should not have to update anything on the base framework for your tests yo be runned.

Also, could you share your OS and OFBiz version ?

Regards,

Gaetan

On 6/10/24 19:13, Carsten Schinzer wrote:
Hello Gaetan,


I do all this as you describe, source path for tests is as required and
tests are properly annotated.
The main difference is that this is not a unit test out of a framework, but
unit tests sitting in a plugin component.

I so not see any traces of the framework stepping into my test directories
when executing test (I ran .gradlew test —info to get more info).

IMO something is probably missing in my build.gradle:

/*…*/

dependencies {
      // information: the ofbiz:release22.01 is on
jakarta.ws.rs:jakarta.ws.rs-api:2.1.6
      pluginLibsCompile 'org.glassfish.jersey.inject:jersey-hk2:2.31'
      pluginLibsCompile
'org.glassfish.jersey.containers:jersey-container-servlet:2.31'
      pluginLibsCompile
'org.glassfish.jersey.media:jersey-media-json-jackson:2.31'
      pluginLibsCompile 'javax.json:javax.json-api:1.1.4'
      pluginLibsCompile 'jakarta.inject:jakarta.inject-api:2.0.1'
      pluginLibsCompile 'jakarta.ws.rs:jakarta.ws.rs-api:2.1.6'
      pluginLibsCompile 'com.fasterxml.jackson.core:jackson-annotations:2.16.1'       pluginLibsCompile 'com.fasterxml.jackson.core:jackson-core:2.16.1'       pluginLibsCompile 'com.fasterxml.jackson.core:jackson-databind:2.16.1'
      pluginLibsCompile
'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.16.1'
      // Swagger Annotations for OpenAPI
      pluginLibsCompile 'io.swagger.core.v3:swagger-annotations:2.2.20'
      // Swagger JAX-RS Integration for OpenAPI
      pluginLibsCompile 'io.swagger.core.v3:swagger-jaxrs2:2.2.20'
      // Swagger UI
      pluginLibsCompile 'org.webjars:swagger-ui:4.1.3'
      // Junit core, api and parameterization
      pluginLibsCompile 'org.junit.jupiter:junit-jupiter:5.10.0'
      pluginLibsCompile 'org.junit.jupiter:junit-jupiter-api:5.10.0'
      pluginLibsCompile 'org.junit.jupiter:junit-jupiter-params:5.10.0'
}

task install {
      doLast {
          // Install logic for this plugin
      }
}

task uninstall {
      doLast {
          // uninstall logic for this plugin
      }
}


I have dependencies on JUnit 5 since I want to use the ParameterizedTest feature available there. Maybe that is the issue. I also cannot find a passing build when stating these dependencies as pluginCompileOnly either.

So almost certainly this is rather a hook into the test executionon grade
side, WDYT?

Thanks for your comments so far!
Warm regards


Carsten


Am 10.06.2024 um 17:54 schrieb Gaetan <gaetan.chabous...@nereide.fr>:

Hi again,

After some research, it seems you should follow this kind of structure for
your unit tests :

https://github.com/apache/ofbiz-framework/blob/7c2487bc3f1a6ec472585c27d7ceb5ca19471387/build.gradle#L259

So you should setup your tests at the right package (either groovy or java
according to build instructions) and add the test decorator like this
example

https://github.com/apache/ofbiz-framework/blob/7c2487bc3f1a6ec472585c27d7ceb5ca19471387/framework/base/src/test/java/org/apache/ofbiz/base/container/ComponentContainerTest.java#L63

Please let me know if you encounter any more trouble !

Regards

Gaetan

On 6/10/24 16:55, Carsten Schinzer wrote:

… and after some more assertions, I can add:
I have verified the paths to all my test suites to point to the correct
Java classes.
I do not find any error in the test logs.
I do find the classes in the build/classes/java/test directory.
I do not find related test results at all.

An hint you can give me is appreciated!
Warm regards


Carsten

Am 10.06.2024 um 15:47 schrieb Carsten Schinzer <
cars...@dcs-verkaufssysteme.de>:

Hello,


You mean like this:

<test-suite loader="main" location="testdef/CdcTicketsTests.xml“/
Yes, I think I did it well like that. no?
Warm regards


Carsten



Am 10.06.2024 um 09:17 schrieb Gaetan <gaetan.chabous...@nereide.fr>:

Hi Carsten, did you include your tests in the ofbiz-component file a the
root of your plugin ?

Best regards

Gaetan

On 6/9/24 21:15, Carsten Schinzer wrote:

Hello all,


I am looking for a reference to integrate my plugin unit tests into the
test run of OfBiz, i.e. when I run

./gradlew test

My defined test suite should be included and executed.

I did browse the official plugin repository and found no reference.

First issue: how to define the hook into the test task in build.gradle. Second: Ho to make sure, the build.gradle dependencies on JUnit are only
loaded for test and not packaged.

Does anyone have an example possibly how to do this.

Thanks & warm regards


Carsten

Reply via email to