[
https://issues.apache.org/jira/browse/HADOOP-9330?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13613012#comment-13613012
]
Robert Joseph Evans commented on HADOOP-9330:
---------------------------------------------
I agree that there should be something about writing and running tests, but I
am not aware of it either. I was thinking of just the javadocs for
HadoopTestBase, but a dedicated wiki page or a subsection of HowToContribute
would probably be better. I agree that having timeout= in the code is brittle,
and we probably want to start removing it once this goes in (along with the
changes to test-patch.sh).
But in a follow on JIRA I was thinking we probably could support something
similar to what [~vicaya] proposed. It should not be that hard to add in our
own timeout test runner that can look for an @Test annotation with a timeout,
output a warning about the timeout, and then allow JUnit to run with that
timeout. We could also provide an @Timeout annotation that would let us
specify a timeout multiplier that is X times the configured base timeout. That
way we can keep a 100s timeout and adjust it for tests that do take longer.
I am not tied to the idea though, and if it feels like too much work compared
simply upping the default to something like 600s works we could do that
instead.
> Add custom JUnit4 test runner with configurable timeout
> -------------------------------------------------------
>
> Key: HADOOP-9330
> URL: https://issues.apache.org/jira/browse/HADOOP-9330
> Project: Hadoop Common
> Issue Type: Test
> Components: test
> Affects Versions: 3.0.0
> Reporter: Steve Loughran
> Attachments: HADOOP-9330-timeouts-1.patch
>
>
> HADOOP-9112 has added a requirement for all new test methods to declare a
> timeout, so that jenkins/maven builds will have better information on a
> timeout.
> Hard coding timeouts into tests is dangerous as it will generate spurious
> failures on slower machines/networks and when debugging a test.
> I propose providing a custom JUnit4 test runner that test cases can declare
> as their test runner; this can provide timeouts specified at run-time, rather
> than in-source.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira