Юнит: Можно ли это сделать?
Я пытаюсь написать несколько тестов пользовательского интерфейса для веб-приложения, но есть несколько сложностей, которые, я надеюсь, помогут вам решить.
Во-первых, приложение имеет два режима. Одним из режимов является «тренировка». и другой является «живым». В режиме реального времени данные берутся прямо из нашей базы данных, и любые изменения, внесенные моими тестами, отражаются в базе данных перед запуском каждого теста в «прямом эфире». Мне нужно сгенерировать тестовые данные, так как они каждый раз разные (у меня уже есть эта логика). В режиме обучения все данные являются статическими, поэтому каждый раз используются одни и те же данные испытаний.
Поскольку пользовательский интерфейс одинаков в каждом режиме, я хочу запускать тесты для каждого режима один раз, однако из-за определенных особенностей некоторые из моих тестов могут выполняться только в режиме реального времени.
В идеале я хотел бы разделить свои тесты на несколько классов, скажем: UserTests, PaymentTests, LiveOnlyTests, и т.д. И имеют два разных класса (расширяющих общий интерфейс), которые предоставляют тестовые данные.
Затем из этих частей я хотел бы построить 2 разных набора тестов, по одному для каждого режима. Наборы тестов могли бы принять объект с данными, которые я им передал, и выполнить тесты.
Кто-нибудь знает, возможно ли это или что-то, что достигает аналогичного эффекта, сделать в JUnit (или любой другой платформе java-test в этом отношении). Единственный способ увидеть, как это делается, - написать собственного бегуна, но я бы предпочел этого избежать.
Заранее спасибо.