Skip to content

Allow running many runs per test without flooding the logs#9158

Merged
jtattermusch merged 2 commits intogrpc:masterfrom
jtattermusch:deflaking_adjustments
Dec 20, 2016
Merged

Allow running many runs per test without flooding the logs#9158
jtattermusch merged 2 commits intogrpc:masterfrom
jtattermusch:deflaking_adjustments

Conversation

@jtattermusch
Copy link
Copy Markdown
Contributor

@jtattermusch jtattermusch commented Dec 17, 2016

Based on #9161 (fix needed to prevent tests from hanging if they timeout).

Allow invoking run_tests_matrix.py with specified number of runs per tests. To prevent the test reports from becoming too large (and to consume too much memory in a run_tests.py instance), also allow omitting passing tests from the XML report and from console output.

-- one more thing that needs to be addressed is increasing the timeout in run_tests_matrix.py accordingly (currently 4 hours should be enough for most wrapped languages, but it might not be enough for C/C++).

Copy link
Copy Markdown
Contributor

@matt-kwong matt-kwong left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jtattermusch jtattermusch merged commit 1a74160 into grpc:master Dec 20, 2016
Copy link
Copy Markdown
Contributor

@adelez adelez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we do this for interop tests as well?

help='Generates a JUnit-compatible XML report')
argp.add_argument('--report_suite_name', default='tests', type=str,
help='Test suite name to use in generated JUnit XML report')
argp.add_argument('--quiet_success',
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like this option only makes sense when n > 1, maybe we don't need to expose it as an arg?

return [
self.config.job_spec(['src/objective-c/tests/run_tests.sh'],
timeout_seconds=None,
timeout_seconds=60*60,
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Define a constant for timeout values?

with open('tools/run_tests/sanity/sanity_tests.yaml', 'r') as f:
return [self.config.job_spec(cmd['script'].split(),
timeout_seconds=None, environ={'TEST': 'true'},
timeout_seconds=30*60, environ={'TEST': 'true'},
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ditto

@jtattermusch
Copy link
Copy Markdown
Contributor Author

@adelez, I merged the PR before I received the comment from you.

Currently I am not planning to introduce this for interop tests because it will take more work to make use of changes this PR (and that's what I am planning to work on in the nearest future). We might try to introduce a similar change for interop tests later (but on the other hand, running multiple instances of interop tests is in fact what stress tests are doing).

@lock lock bot locked as resolved and limited conversation to collaborators Jan 25, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants