ну они берут существующий фреймворк pytest, в котором используется библиотека selenium и еще ряд других по необходимости. Допиливание conftest и самих тестов едва ли будет "работой над фреймворком pytest" да и сами тесты и их иерархия едва ли собой фреймворк представляют.
скорее это устоявшийся и не до конца правильно используемый термин. да даже если ты для pytest своих плагинов напишешь, едва ли можно называть "созданием фреймворка".
но бывает вариант когда тесты не просто берут селениум и пару врапперов над ним, а в них присутствует огромное количество логики по настройке и поднятию окружения, настройке и поднятию тестируемых приложений с контролем их работы из тестов, с настройкой поднятием и контролем различных моков, с расширенной работой с различными хранилищами данных (mysql, clickhouse, kafka, zmq, rmq, tarantool итд).
или дополнительно много встроено в сам пайтест, на что он изначално в принципе не рассчитан итд.
и вот все это добро позволяет не просто накинуть тесты как полезную нагрузку, а накинуть целые блоки тестируемых приложений вместе с тестами и встроить их в существующий собственный флоу
и это действительно уже можно назвать "тестовым фреймворком на базе pytest", где последний отвечает только за последовательность вызова хуков, фикстур и тестов + все его плюшки как что где и когда запускать