Code Monkey home page Code Monkey logo

Comments (9)

fhoeben avatar fhoeben commented on September 2, 2024

Issues starting a test system normally show up in the 'Execution' log that can be reached from the wiki page, after you started the test. Is there any relevant information there.

Usage of an slf4j implementation is always a bit tricky for FitNesse given that it is both a library and a separate process. When used as a library we want to allow the fixture (or System Under Test) code to be able to choose its implementation for logging and FitNesse should not get in the way. When starting a server it would be best to have an slf4j implementation activated. I actually thought we did bundle and activate one that would cause logging to go to the console.

But I have to admit I haven't looked at this in a long time, never had any need for logging of the wiki server. I'm fairly sure the Execution Log will contain the information needed to trouble shoot the issue you are having

from fitnesse.

Wer-Wolf avatar Wer-Wolf commented on September 2, 2024

The execution log contains no information besides that the slim server failed to start. I also found out that when using the official Java 8 JRE together with an older FitNesse version, the logging works.

I suspect that this has something to do with the OpenJDK installation.

from fitnesse.

six42 avatar six42 commented on September 2, 2024

from fitnesse.

Wer-Wolf avatar Wer-Wolf commented on September 2, 2024

Even the command is not displayed inside the execution log.

It is however displayed together with a Exception when using the official Java 8 JRE.

from fitnesse.

six42 avatar six42 commented on September 2, 2024

Hi Wer-Wolf,
I tried the same configuration which you mentioned: Winows 11, openJDK11 and Fitnesse 20240707.
It is correct that at startup it logs that no SLF4J provider is found.
This has no influence on running the system and executing tests. They all work without problems.
Tried:
http://localhost/FitNesse.SuiteAcceptanceTests.SuiteFitDecoratorTests.MaxTimeDivision?test
http://localhost/FitNesse.UserGuide.TwoMinuteExample?test

Can you try these?
Do you have a problem with a testcase you created yourself?

from fitnesse.

Wer-Wolf avatar Wer-Wolf commented on September 2, 2024

I am having a problem with a test case i created myself. The problem is that no error information is displayed when the test fails, likely because of the missing SLF4J provider.

If this the intended behaviour for the standalone fitnesse binary, then we might close this issue and i will try to install a proper SLF4J provider.

from fitnesse.

fhoeben avatar fhoeben commented on September 2, 2024

What error kind of error were you expecting when a test fails. Normally in FitNesse we expect the test result to be visible in the resulting HTML page. Building that page is not done via slf4j so it should not require a provider.

from fitnesse.

fhoeben avatar fhoeben commented on September 2, 2024

I just checked the source setup (as we do seem to include slf4j-jdk14 as a dependency) and it is strange that this message is displayed. You already indicated that it does not occur with Java 8 and an older FitNesse version,

from fitnesse.

fhoeben avatar fhoeben commented on September 2, 2024

Due to our build process I believe we are missing the configuration for the logging implementation to be picked up automatically.

As a workaround you can add -Dslf4j.provider=org.slf4j.jul.JULServiceProvider to your startup command and slf4j logging will work as before (you can of course also add your own provider/binding, which I recommend if your fixtures rely on slf4j logging, and configuration). So the full command then becomes something like:

java -Dslf4j.provider=org.slf4j.jul.JULServiceProvider -jar fitnesse-20240218-standalone.jar -p 9090

We should see whether we can default the provider (so only use this provider if no other provider is available) to prevent this message. That should also resolve the older issue where we want to have a provider in the wiki process (where we are the application) but we don't want to add this provider to test processes (when FitNesse acts as a library which should only rely on the API) where fixtures provide their own logging provider/config.

from fitnesse.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.