Я писал тестовые сценарии, используя функцию TestNG DataProvider. До сих пор я был доволен тем, как я это делал, так как количество параметров, которые я передавал, было меньше 10, но некоторые из новых страниц, которые я тестирую, имеют более 30-35 параметров, добавление этих параметров в метод тестирования делает это выглядит очень некрасиво
Это хороший способ динамической передачи параметров, но затем их использование затруднено, так как вы должны быть очень осторожны с индексами и склонны к ошибкам, если это необходимо сделать для многих методов.
Я попытался передать тестовые данные как ArrayList>, где HashMap — это пара «имя-значение столбца», но TestNG не примет это, поскольку HashMap не может быть приведен как Object[]. Причина, по которой я подумал об использовании HashMap, заключается в том, что вы можете запросить ключ и получить его значение, а ключ мне известен. Я мог бы написать общий метод для получения значения и присвоения его переменной, представляющей имена полей на странице.
Источник данных (XLS) хранит только тестовые данные, введенные на странице, поэтому он основан исключительно на данных, а не на ключевых словах. Все страницы, которые я тестирую, являются страницами ввода данных.
Каков наилучший способ иметь какую-то идентичность в тестовых данных, а также заставить TestNG принять их.
В качестве альтернативы я создал карту, беря данные из Excel и передавая их поставщику данных, в то же время я создал хэш-карту и сохранил ее глобально для доступа в моем тестовом методе, но этот способ не удалит передаваемые аргументы в мой тестовый метод.
Любая помощь в этом отношении очень ценится. Спасибо, Кетан.