В проекте используется MongoDB, поэтому эти ответы бесполезны: 1, 2, 3
Я могу успешно выполнить каждый тестовый файл или даже небольшие группы тестовых файлов, но они терпят неудачу при запуске всех вместе. rspec spec/*
Finished in 23 minutes 45 seconds (files took 23.02 seconds to load)
2071 examples, 1357 failures, 28 pending
Проект немного устарел. MongoDB 3.6, Ruby 2.5.1 с Padrino в качестве фреймворка. Кроме того, мы используем DatabaseCleaner и Fabrication. Многие ошибки показывают классическое сообщение Sinatra doesn’t know this ditty.
61) BlogController POST :create Microsite request should return code 12 for invalid token
Failure/Error: @response_body = JSON.parse(last_response.body)
JSON::ParserError:
784: unexpected token at '<!DOCTYPE html>
<html>
<head>
<style type="text/css">
body { text-align:center;font-family:helvetica,arial;font-size:22px;
color:#888;margin:20px}
#c {margin:0 auto;width:500px;text-align:left}
</style>
</head>
<body>
<h2>Sinatra doesn’t know this ditty.</h2>
<img src='http://localhost.la/__sinatra__/404.png'>
<div id="c">
Try this:
<pre># in app.rb
class Microsite
post '/v1/microsite/blog' do
"Hello World"
end
end
</pre>
</div>
</body>
</html>
'
Кроме того, мой босс использует Apple, и у него была аналогичная проблема, связанная с WiredTiger. Однако я использую Ubuntu, и файл журнала MongoDB не показывает ошибок WiredTiger при выполнении тестов. Вроде поправил с настройкой системы. Очевидно, Rspec пытался открыть все файлы, чтобы выполнить тесты, и процессу не хватило памяти или что-то в этом роде. Должен ли я сделать аналогичную конфигурацию в Ubuntu?