Когда я помещаю тег кассеты на Cucumber, отмеченный тегом @javascript (в результате чего
При первом запуске все происходит как положено: кассета записывает, данные используются и все проходит.
В следующий раз, когда я запускаю его (с кассеты), он терпит неудачу с незарегистрированным запросом: GET http: // localhost : 9887 / identify .
Похоже, что Selenium должен разговаривать со своим сервером, используя этот порт (в данном случае пингует его, чтобы узнать, существует ли он). Я не совсем уверен, как VCR все испортил, но это так.
Вероятно, было бы полезно разрешить запросы localhost (либо с возможностью настройки, либо с помощью тега @allow_localhost , либо и того, и другого).
Это должно быть решено с помощью 2ed9c3c318305ee39fa054997da1b67c1413a408.
У меня такая же проблема с версией 1.11.3 с тестом запросов rspec с: js => true (capybara, selenium).
GET http://localhost:9887/__identify__
.Я преодолел это, установив в некоторых ситуациях c.allow_http_connections_when_no_cassette = true
.
@clyfe - я рекомендую вам использовать вместо этого параметр c.ignore_localhost = true
config; он специально предназначен для этого.
@myronmarston Спасибо за c.ignore_localhost = true
, мне это помогло. Но я хотел записать местную службу. Итак, сначала я записал это, а затем сменил хост на кассете.
Самый полезный комментарий
@clyfe - я рекомендую вам использовать вместо этого параметр
c.ignore_localhost = true
config; он специально предназначен для этого.