2017-02-20 21 views
3

У меня есть испытание транспортиром, в котором я использую protractor.promise.all для решения нескольких обещаний, и он отлично работает. Однако, если я использую Promise.all вместо protractor.promise.all, я получаю некоторую ошибку. Поэтому я думаю, что между ними существует значительная разница. Мои вопросы:Разница между Promise.all, webdriver.promise.all, protractor.promise.all

1) Какова разница между:

webdriver = require('selenium-webdriver'); 
webdriver.promise.all 

и

protractor.promise.all 

и

Promise.all 

2) Как я могу найти все случаи, когда у меня есть вместо использования стандарта использовать собственную реализацию транспортиров. Есть ли документация об этих особых случаях?

Спасибо!

ответ

3

protractor.promise предоставляет вам быстрый доступ к WebDriver обещают и так же, как webdriver.promise. Но Promise - это встроенный объект EcmaScript 2015 для асинхронных вычислений.

В Protractor есть "Control Flow" mechanism, который управляет очередью webdriver, обещает решить их в порядке и сохранить организованность. Если вы хотите, чтобы ваши обещания были обработаны с помощью Flow Flow, используйте обещания webdriver через protractor.promise.