Если я правильно понимаю, что использование объектной модели страницы приведет к созданию отдельных структур, поскольку каждый сайт будет иметь свои собственные идентификаторы. Это в основном создание карты сайта, к которой может получить доступ ваш проект Selenium.
Вот как я реализовал это в прошлом.
Создание одного решения в Visual Studio. Затем создайте отдельные проекты для каждого сайта в этом одном решении. Также создайте общий проект также с вещами, которыми должны делиться все сайты. Вы можете сделать некоторые из ваших общих вещей Selenium в общем проекте.
В каждом отдельном проекте вы можете реализовать объектную модель страницы или добавить каждый элемент в конфигурацию своего приложения и ссылаться на него с помощью Configuration Manager. Это позволяет каждому сайту иметь свой собственный список идентификаторов. Если у вас есть разработчики, они также могут добавить специальные идентификаторы в поля, которые используются только для qa. Это ценно, потому что они могут перемещать объекты по всему экрану и до тех пор, пока они не изменят «qaid» поля, ваш список будет оставаться актуальным, а ваши тесты не будут нарушены. Этот подход требует некоторой работы от ваших разработчиков, чтобы добавить qaids к элементам, но как только это будет сделано, ваши тесты будут работать намного лучше. Это также устраняет необходимость проходить через Xpath или сложные CSSSelectors.