-
-
Notifications
You must be signed in to change notification settings - Fork 128
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
feat: support stress testing #1031
base: master
Are you sure you want to change the base?
Conversation
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.
Awesome! Left some comments please provide your feedback
src/Widgets/StressTesting.cpp
Outdated
in = out; | ||
|
||
QString language = mainWindow->getLanguage(); | ||
stdRunner = new Core::Runner(1); |
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.
You can modify or inherit from Runner a class StressRunner
and move these logic inside it. That way you can also change enum types.
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.
Why do we need a new class?
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.
If you make SourceType as enum class it cannot be implicitly converted to int type. Runner takes an int argument hence to make it work you might have to inherit it. Since you used normal enum its fine.
if (compiledCount == 3) | ||
{ | ||
nextTest(); | ||
} |
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.
Could there be a better way for it?
I haven't tested it at local yet. But from the screen record, it seems that more features are needed to make it more useful than a shell script. See #162 (comment).
By "testlib style", do you mean generators that take command-line arguments? I don't think we need to force this style. Now we provide the Polygon functionality to feed random arguments to the generator, and testlib-style generators can make use of these arguments. But the user can keep the arguments empty and generate different test cases with the same empty arguments. And if we don't restrict the style, we can also support Python/Java generators. |
Description
Support stress testing.
Related Issues / Pull Requests
Closes #917
Motivation and Context
How Has This Been Tested?
macOS 12.0.1
Screenshots (if appropriate)
Screen.Recording.2022-01-01.at.8.42.27.PM.mov
Checklist
old
attribute is updated or it is resolved in SettingsUpdater.tr()
orQCoreApplication::translate()
.Additional text
It is almost the same as Polygon's, so only testilb style generators are supported.