RFR: 8319555: [TestBug] Utility for creating instruction window for manual tests [v9]

Kevin Rushforth kcr at openjdk.org
Thu May 23 17:41:10 UTC 2024


On Fri, 17 May 2024 19:22:39 GMT, Andy Goryachev <angorya at openjdk.org> wrote:

>> ## ManualTestWindow
>> 
>> This facility provides the base class for manual tests which displays the test instructions,
>> the UI under test, and the Pass/Fail buttons.
>> 
>> Example:
>> 
>> 
>> public class ManualTestExample extends ManualTestWindow {
>>     public ManualTestExample() {
>>         super(
>>             "Manual Test Example",
>>             """
>>             Instructions:
>>             1. you will see a button named "Test"
>>             2. press the button
>>             3. verify that the button can be pressed""",
>>             400, 250
>>         );
>>     }
>> 
>>     public static void main(String[] args) throws Exception {
>>         launch(args);
>>     }
>> 
>>     @Override
>>     protected Node createContent() {
>>         return new Button("Test");
>>     }
>> }
>> 
>> 
>> Resulting application window:
>> 
>> ![ManualTestWindow](https://github.com/openjdk/jfx/assets/107069028/fa29ce47-1ca3-458e-91e9-472da43cd724)
>> 
>> Readme:
>> 
>> https://github.com/andy-goryachev-oracle/jfx/blob/8319555.manual/tests/manual/util/README.md
>> 
>> @prrace 's test EmojiTest has been converted to use the new test window as a demonstration (also fixed the Eclipse project so it works now).
>> 
>> Q: What other features can be added to the test window?
>> 
>> Edit: the sources are left in their original place at the root of the project.
>
> Andy Goryachev has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 15 additional commits since the last revision:
> 
>  - Merge branch 'master' into 8319555.manual
>  - Merge remote-tracking branch 'origin/master' into 8319555.manual
>  - Merge remote-tracking branch 'origin/8319555.manual' into 8319555.manual
>  - removed example
>  - cleanup
>  - whitespace
>  - extends application
>  - works
>  - .
>  - sources moved back
>  - ... and 5 more: https://git.openjdk.org/jfx/compare/1c6a743c...e4c8d29a

We need to provide a build script for any manual test that isn't self-contained in a single directory (see my earlier comment). For example, we have a build script for MonkeyTester and FXMediaPlayer.

As a separate step, we could make it available as part of the gradle build, as long as we can do it without adding individual tests to build.gradle (sort of like we do for apps), but the previous is the minimum.

This should probably be put on the back burner until the next test sprint.

-------------

PR Comment: https://git.openjdk.org/jfx/pull/1413#issuecomment-2127713126


More information about the openjfx-dev mailing list