Я попытаюсь объяснить мой сценарий здесь, чтобы было ясно, чего я хочу.
У меня есть набор методов в классе, который выполняет несколько тестов, все они связаны друг с другом и должнызапускаться в последовательности, поэтому они имеют DependsOnMethod
в своей аннотации @Test
.Я также использую DataProvider
, который возвращает 7 значений за тест (n строк и 7 столбцов).Теперь, когда я помещаю этот поставщик данных на уровень метода, он читает все строки и выполняет метод 1 с каждым доступным набором данных, а затем переходит к следующему методу.
Я хочу, чтобы эта последовательность была изменена, я хочу, чтобы онаЗапустите метод 1 (набор данных 1), метод 2 (набор данных 1), метод 1 (набор данных 2), ... Я знаю этот вопрос у многих людей.Причина, по которой я снова отправляю этот вопрос, состоит в том, что я попробовал все предложенные идеи.
При использовании заводской аннотации мой тест вообще не запускается в Eclipse, давая NullPointerException
.Я использую аннотацию @BeforeClass
, которая никогда не запускается, если я использую заводскую аннотацию.Я даю эту фабричную аннотацию о конструкторе класса.
Я попробовал флаг group-by-instance
в файле testng.xml, но это тоже не удалось: он запускает тесты в той же последовательности.
Пожалуйста, кто-то может объяснить все это в правильномзаказать для меня?Если это возможно на примере, я уверен, что этого можно достичь, но я думаю, что-то что-то упустил.
Любая помощь с этим очень ценится.
PS Я не очень хорошс Java, и я использовал TestNG в течение последних 2-3 недель.
Спасибо, Джон