проблема в том, что о локаторах вы думаете в том месте, где декларируете элемент. и в этом месте сценария проверяете, что находится по этому локатору
не согласен. декларировать элемент можно с любым локатором, и в ленивых библиотеках можно вполне себе подумать о том как искать элемент когда он будет нужен, но задекларировать его где то раньше, когда его еще нет в доме, в этом же и фишка