Skip to content

Tests output panel misleads people to think that their solution passes all tests, but fails #69

Closed
@hobovsky

Description

@hobovsky

Describe the bug

It's somewhat common, especially among newbies, that users interpret all-green output panel as a sign that their invalid solution passes all tests, but for some reason (not clear to them) gets rejected by the system.

It generally happens when all assertions in the test suite are successful, but it either crashes or is aborted by the runner. Such situation results in no distinctive, red messages, and users are not sufficiently hinted that tests fail because of problems with the submitted solution, and not for example the runner or system.

To Reproduce

There are several scenarios to cause similar behavior, some are more obvious that the others. I will post a few I remember, but I believe actual occurrences can differ by language, testing framework, and actual cause.

Tests aborted on timeout:

This kumite: https://www.codewars.com/kumite/5f2bececae0b73001a1b152a
This discourse: https://www.codewars.com/kata/5544c7a5cb454edb3c000047/discuss#5f2cee3f41132d000fc862b1 and many similar

I know there's a big message at the bottom hinting users what happened, but still amount of raised issues implies they don;t really get it. Needs more red.

Tests crash with stack overflow in Scala:

This kumite: https://www.codewars.com/kumite/5f2d79c341132d0023c94da6
This discourse: https://www.codewars.com/kata/5ce399e0047a45001c853c2b/discuss#5f2934af17642000193c1599

Notice how majority of posts contains phrase "my solution passes all tests, but fails", or similar.

I can think of more examples if you think it's necessary, but the problem generally applies to majority of cases when test suite crashes or exits forcibly.

Expected Behavior

If test suite is aborted due to invalid solution, I (and probably users) would expect it to be presented in a manner similar to failed assertions: with distinctive, red, big, difficult to miss message.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions