Новичок здесь, поэтому я заранее прошу прощения, если вопрос может быть глупым.
Я создал статическую веб-страницу, используя Middleman (ruby), все работало локально, и тесты rspec проходили.
Для развертывания мне пришлось переместить все файлы в один каталог и создать новый репозиторий (был средний уровень, который был бесполезен и не позволял мне развертывать).
Если я сейчас открою веб-страницу, то там не будет навигационной панели моего сайта, и если я запущу тесты, все сломается.
В чем может быть проблема?
// spec_helper.rb
require 'rspec'
require 'capybara/rspec'
require 'middleman-core'
require 'middleman-core/rack'
require 'middleman-autoprefixer'
require 'middleman-livereload'
middleman_app = ::Middleman::Application.new
Capybara.app = ::Middleman::Rack.new(middleman_app).to_app do
set :root, File.expand_path(File.join(File.dirname(FILE), '..'))
set :environment, :development
set :show_exceptions, false
end
// index_spec.rb
опишите 'Индекс', введите:: feature do
it 'displays project list' do
expect(page).to have_css '.projects'
within '.projects' do
expect(page).to have_content 'My First Website in HTML'
expect(page).to have_content 'FizzBuzz'
expect(page).to have_content 'My First Website in React'
expect(page).to have_content 'Address Book'
end
end
it 'displays navbar partial' do
expect(page).to have_css '.topnav'
within '.topnav' do
expect(page).to have_content 'Home'
expect(page).to have_content 'About'
expect(page).to have_content 'Projects'
expect(page).to have_content 'Contact'
end
end
конец
// site.js
function navbar() {
var x = document.getElementById("myTopnav");
if (x.className === "navbar") {
x.className += " responsive";
} else {
x.className = "navbar";
}
}
function scrollToElementWithId(id) {
var name = "";
switch (id) {
case 0:
name = "home"
break;
case 1:
name = "about"
break;
case 2:
name = "projects"
break;
case 3:
name = "curriculum"
break;
case 4:
name = "contact"
break;
default:
scrollToElementWithId(0);
}
document.getElementById(name).scrollIntoView({behavior: "smooth"});
}
Сообщение об ошибке:
Неудачи:
1) На индексной странице отображается список проектов
Ошибка / Ошибка: посетите '/'
NoMethodError:
undefined method `visit' for #<RSpec::ExampleGroups::IndexPage:0x00007f9a35aaa880>
# ./spec/feature/index_spec.rb:4:in `block (2 levels) in <top (required)>'
2) На индексной странице отображается панель навигации
Ошибка / Ошибка: посетите '/'
NoMethodError:
undefined method `visit' for #<RSpec::ExampleGroups::IndexPage:0x00007f9a35aa8f08>
# ./spec/feature/index_spec.rb:15:in `block (2 levels) in <top (required)>'
Завершено за 0,0034 секунды (загрузка файлов заняла 0,10427 секунды)
2 примера, 2 отказа
Неудачные примеры:
rspec ./spec/feature/index_spec.rb:3 # На странице указателя отображается список проектов
rspec ./spec/feature/index_spec.rb:14 # На индексной странице отображается панель навигации, частичная