Как мне обратиться к верхнему узлу в TestFX? - PullRequest
0 голосов
/ 09 апреля 2019

Я только начинаю с TestFX, и мне интересно, как обратиться к началу Node (то есть Stage).

Здесь Я вижу, это говорит

Все тесты TestFX должны использовать verifyThat (Node, Matcher, Function), когда написание тестов, чтобы разработчик мог использовать DebugUtils для обеспечения дополнительная информация о том, почему тест не пройден.

Это полезный указатель ... скажем, я хочу сказать, что "диалоговое окно / окно JavaFX имеет ширину не менее 600 пикселей и высоту не более 400 пикселей"?

Внимание, я использую подход org.junit, потому что примеры на сайте gitub TestFX, похоже, таковы. На самом деле я фанат Groovy и надеюсь вскоре перейти к реализации Spock TestFX.

NB2 мне приходит в голову, что один из способов получить Stage в тестовом коде - это сделать Stage полем тестируемого класса:

class ClickApplication extends Application {

    Stage allTheWorldsA

    public void start(Stage stage) {
        Parent sceneRoot = new ClickPaneGG()
        Scene scene = new Scene(sceneRoot, 500, 1000)
        stage.setScene(scene)
        stage.show()

        allTheWorldsA = stage
    }

... но каким-то образом это кажется неправильным способом: если Stage передается как параметр start, создается впечатление, что дизайнеры не хотели, чтобы вы создавали поле класса.

...