> Delivers the following enhancements: > - wires the manual tests to the main gradle build > https://bugs.openjdk.org/browse/JDK-8296441 > - removes the limitation of single source file for manual tests > - provides the `ManualTestWindow` base class for manual tests with pass/fail > buttons and instruction text area > - allows for skipping tests on certain platforms > - modified EmojiTest to showcase the new `ManualTestWindow` > - provides the manual test runner `TestRunnerApp` which allows for running > manual tests in sequence or any order > > At the moment, the new code is placed in the `tests/manualTests` directory. > > The `gradle manualApps` packages the manual tests into the > `tests/manualTests/build/libs/manualTests.jar` executable jar. > > ## Gradle Build > > `gradle clean manualApps` > > > ## ManualTestWindow > > This class simplifies writing manual tests. 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 > ); > } > > @Override > protected Node createContent() { > return new Button("Test"); > } > } > > >  > > ## TestRunnerApp > > <img width="890" height="456" alt="Screenshot 2026-04-20 at 13 24 41" > src="https://github.com/user-attachments/assets/1bd6b694-83cc-43b5-8b09-703f5f3b9d68" > /> > > > Features: > > - loads default test plan > - allows to load a test plan from file > > Possible improvements: > > - execute single test within tests/manual2 without writing a test plan > - generating report > > > ## Migrating Manual Tests > > Migrating existing tests is simple: > - the tests must not use the default package > - `TestRunnerApp` allows to drop the `main()` method. > - FQCN of the test added to the default test plan > - the test can optionally extend the `ManualTestWindow` > > > ## Questions to Reviewers > > 1. should the `apps` target depend on `manualApps` so it builds the tests > automatically? > 2. what other functionality should be implemented in the `ManualTestWindow`? > 3. what other functionality should be implemented in the `TestRunnerApp`? > 5. should we add an ability to launch all the manual tests (or a single one) > from gradle, or running the `TestRunnerApp` with the default test pl...
Andy Goryachev has updated the pull request incrementally with one additional commit since the last revision: docs ------------- Changes: - all: https://git.openjdk.org/jfx/pull/2156/files - new: https://git.openjdk.org/jfx/pull/2156/files/7b4325c5..b607bb8f Webrevs: - full: https://webrevs.openjdk.org/?repo=jfx&pr=2156&range=25 - incr: https://webrevs.openjdk.org/?repo=jfx&pr=2156&range=24-25 Stats: 56 lines in 2 files changed: 50 ins; 1 del; 5 mod Patch: https://git.openjdk.org/jfx/pull/2156.diff Fetch: git fetch https://git.openjdk.org/jfx.git pull/2156/head:pull/2156 PR: https://git.openjdk.org/jfx/pull/2156
