Ответ
Да, есть опыт тестирования DataGrid в различных фреймворках (React, Angular, WPF). Основные проверки включают:
- Функциональность: сортировка, фильтрация, пагинация, inline-редактирование, выбор строк.
- Производительность: отображение и прокрутка больших наборов данных (>10k строк) без "лагов".
- Валидация данных: корректное отображение типов (даты, числа), обработка
null/пустых значений. - Доступность (a11y): навигация с клавиатуры (Tab, стрелки), корректные ARIA-атрибуты для скринридеров.
- Кастомные функции: drag-and-drop строк/столбцов, группировка, закрепление (pinning), динамическое изменение схемы колонок.
Пример теста сортировки (React Testing Library):
test('DataGrid sorts by name ascending', () => {
render(<DataGrid data={testData} />);
const nameHeader = screen.getByText('Name');
userEvent.click(nameHeader); // Первый клик - сортировка по возрастанию
const expectedFirstRow = [...testData]
.sort((a, b) => a.name.localeCompare(b.name))[0].name;
const firstDataRow = screen.getAllByRole('row')[1]; // Пропускаем header row
expect(firstDataRow).toHaveTextContent(expectedFirstRow);
});
Инструменты: Для E2E использовал Playwright/Selenium, для компонентного тестирования — Jest + React Testing Library. Проверял интеграцию с бэкендом через моки API.