-
Notifications
You must be signed in to change notification settings - Fork 130
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for running benchmarks with WebClient #142
base: master
Are you sure you want to change the base?
Conversation
WebClient is not thread-safe, so just run on one thread.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would be need to do some refactoring to avoid need in inheriting JenkinsRule
and de-facto having two wrappers inside every performance test. How closely is WebClient
tied to JenkinsRule, would we be able to make it a static class from it (Maybe a new class name so that we retain binary compatibility)
From a quick look at the code, it is possible to extract From our benchmarks, the only thing I see that is different is the URL because the port it runs is different every time. Please let me know what you think about it. |
Or we could just have another utility class that creates a @JmhBenchmark
public class SomeBenchmark {
public static class State1 extends JmhJenkinsRule {}
public static class ThreadState extends WebClientThreadState {}
@Benchmark
public void benchmark(State1 state1, ThreadState state2) {
state2.webClient.goTo("");
}
} |
Let's park it for a while I will release #141 without it, so we won't need to rush this PR. Also, a merge conflict |
Adds support for running benchmarks using
WebClient
.@jenkinsci/gsoc2019-role-strategy