Обратите внимание, что атрибуты DataSource и DeploymentItem для TestMethod предоставляются для запуска нескольких тестов в рамках одного метода тестирования. Это можно сравнить с тестами на основе данных или параметризованными тестами. Идея состоит в том, чтобы позволить вам указать несколько наборов параметров, каждый из которых предназначен для одного теста. По этой причине ваш тест читает по одной строке за раз, так как он предназначен для запуска одного теста на строку.
Если вместо «каждого запуска теста» вводится таблица или строки, а не только одна строка, я вижу, что вы можете выровнять таблицу до одной строки, а затем снова развернуть ее в тесте (это просто опция, позволяющая разработать собственный код сглаживания / расширения). Я могу придумать другие варианты, но я полагаю, это зависит от ваших целей. Если вам нужно легко изменить входные данные теста, не перестраивая тесты, то эта модель, основанная на данных, является лучшей. Если вы просто хотите провести тест с таблицей данных (которая не изменится в будущих прогонах теста), рассмотрите что-то более статичное, жестко запрограммированное в тесте. Кроме того, это может сделать тест более читабельным. Вы всегда можете написать код для подделки исходного кода позже.