Как грамотно организовать все части системы автотетсирования с использованием c#

Здравствуйте, уважаемые форумчане!

Я познакомился с Selenium WebDriver. Поделал разные примерчики на c#:
- запуск браузера,
- поиск элементов на странице,
- проверка условий,
- заполнение элементов,
- снятие скриншотов,
- генерация dll для NUnit
- и т.д.
Почитал про паттерны автотестирования:
- PageObject
- PageFactory
Про различные уровни: данные, уровень драйвера, и т.д.

По отдельности вроде бы все понятно, а вот как это все объединить в общую картину - нет.
Могли бы вы подсказать и на примере показать как организовать отдельные части в единое целое, чтобы можно было лекго управлять локаторами и они не влияли на логику теста, чтобы данные были отделены от теста (можно было прогонять на разных данных), чтобы можно было писать позитивные и негативные тесты, чтобы шло логирование текстом, скринами и видео, чтобы каждый модуль системы и уровень были минимально зависимы друг от друга.

Очень надеюсь на вашу помощь, чтобы все встало на свои места.

 

Привет metasar,
 
Ну, ответ тут очень прост. Просто после прочтения – что-то сделайте на практике. 
Если хотите, могу вам что-то подсказать и посоветовать. 
 
Но, вначале: 
1. Найдите любое приложение (Wikipedia, Google, eBay, Grupon)
2. Напишите для него ключевые кейсы (мануальные, достаточно чек-листа. Их должно быть не больше 10, можно меньше)
3. Автоматизируйте эти кейсы как сможете. Можно без пейджобжектов. Это может занять несколько дней. 
4. Залейте код на Github
 
А потом, можете связаться со мной, я могу проревьювать код и подсказать что делать дальше. Контакты в блоге, ниже

dzhariy,

спасибо за помощь, последую вашему совету.