Ответ будет зависеть от вашей версии транспортира.
Когда я писал тестовые случаи, Protractor по своей природе реализовал очередь для хранения асинхронных задач.Но эта очередь содержала только асинхронные задачи от Protractor (например: element(by.partialLinkText('Doge')).click(), etc
), и каждая задача выполнялась одна за другой.Когда вы пишете browser.wait()
, вы, вероятно, добавляете ожидание в очередь Protractor, но через browser.driver.wait()
вы напрямую получаете доступ к драйверу селена, и задача не попадает в очередь.Это означает, что driver.wait()
не будет ждать выполнения предыдущих задач в очереди, прежде чем выполнять себя.
Я не верю, что в текущей версии Protractor все еще есть очередь, и это способствует использованию async/await
и если нет очереди, что будет преимуществом одного перед другим, но, тем не менее, когда мы используем что-либо, связанное с driver
, это означает, что мы обращаемся непосредственно к API драйвера селена.