What does TraceListenerQueue
do
#637
Replies: 1 comment
-
This is a good question and I answer it here, so that we have a record. In the earliest versions of SpecFlow, we designed an interface called As the trace logging was a "global" concern, the Later, I think when one of the test runner (xunit?) provided a built-in test output logger (and parallel execution appeared in the horizon), we realized that our concept no longer works because that logger was test specific, so we could not use it in our global listener. The idea was that we provide a "local" trace listener that the tests can use (registered in the "test-thread" container) and one in the "global" that everyone else can. If the local is not overridden it should forward all messages to the "global" (in a thread-safe, asynchronous way): the "local" is by default implemented with the However, due to rush, backwards compatibility and maybe some laziness, we did not separate the "local" and the "global" trace listener properly at interface level, but both use the At the current time, all supported test runner (xunit, mstest, nunit) has its own output messaging infrastructure, so basically they all capture the messages themselves and never forward the messages to the "global" listener. This is why it seems that currently the I'm open to clean up this. Please suggest. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
@obligaron asked: What is the purpose of
TraceListenerQueue
? It's not normally used. Even after removing the code, all the tests still passed.Beta Was this translation helpful? Give feedback.
All reactions