В webdriver-manager\selenium\update-config.json
для «последних» и «всех» параметров JSON у меня есть абсолютные пути. Как я могу установить относительные пути к ним?
Я пробовал "..\" и ".\", но это не работает. Любые идеи?
В webdriver-manager\selenium\update-config.json
для «последних» и «всех» параметров JSON у меня есть абсолютные пути. Как я могу установить относительные пути к ним?
Я пробовал "..\" и ".\", но это не работает. Любые идеи?
Итак, это дизайн update-config.json
, для чего он используется и почему он здесь.
Когда пользователь вызывает webdriver-manager update
, двоичные файлы загружаются и переименовываются, чтобы включить номер версии. Это позволяет пользователю иметь несколько версий двоичного файла в своем выходном каталоге. Раньше примерно в 2015 году файл загружался, а имя несжатого файла для ChromeDriver было просто chromedriver
(или chromedriver.exe
в Windows). Теперь мы переименовываем, чтобы включить версию. Итак, если бы мы загрузили версию 2.28, несжатый файл был бы chromedriver_2.28
Ранее (~ 2015 г.) поставщик драйверов для local
и directConnect
делал предположения относительно имени файла. Итак, для нашего предыдущего примера предполагается, что файл имеет номер chromedriver
(или chromedriver.exe
в Windows).
Есть несколько проблем с добавлением номера версии:
Итак, что происходит, так это то, что мы отслеживаем загруженную «последнюю» версию. Последняя версия, загруженная webdriver-manager, будет использоваться Protractor. Поле «все» было просто списком загруженных версий. Я считаю, что когда мы называем «статус», используются эти значения.
Очевидно, что если вы удалите update-config.json
, но все еще имеете двоичные файлы, Protractor не найдет update-config.json
. Поэтому он не сможет запустить local
или directConnect
и будет жаловаться/просить запустить webdriver-manager update
.
Предыдущие комментарии спрашивают о сохранении этого значения. Идея здесь в том, что, как и бинарные файлы и файлы кэширования, этот файл является временным и не должен храниться в git. На самом деле я не понимаю вариант использования, когда пользователь хочет иметь относительный путь к update-config.json
, но если вам нужно сослаться на него через код, я бы сделал что-то вроде lib/driverProviders/local.ts#L43.
update-config.json
, транспортир не может работать, как вы сказали. Он все еще пытался найти его.
- person Bob Bai; 23.03.2017
Вы можете попробовать обновить его так, он обязательно обновит его в node_modules/protractor
$./node_modules/protractor/bin/webdriver-manager update
node node_modules\protractor\bin\webdriver-manager update
- person Hodossy Szabolcs; 15.01.2020
update-config.json
— это сгенерированный временный файл, и его не следует сохранять на github. Я не уверен, почему вы хотите сохранить эти данные в github. Как вы планируете использовать этот файл? Его основная цель — записать пути, чтобы Protractor мог легко подобрать их и запустить последние версии. - person cnishina   schedule 22.03.2017