簡體   English   中英

無法通過黃瓜測試連接到PostgreSQL

[英]unable to connect to PostgreSQL from cucumber tests

在功能測試中,我使用byebug來檢查數據庫連接

/myfeaturesteps.rb

Given(/^I have an application "(.*?)"$/) do |name|
byebug

>Rails.env
>'test'

>ActiveRecord::Base.connected?
>true

當我嘗試觸摸數據庫時

>User.first
>ActiveRecord::StatementInvalid Exception: PG::ConnectionBad: PQsocket() can't get socket descriptor:

當我在測試環境上運行控制台時

rails console test

>Rails.env
>'test'

>User.first
User Load (1.2ms)  SELECT  "users".* FROM "users"  ORDER BY "users"."id" ASC LIMIT 1
=> nil 

在相同的rails環境中使用相同的命令會得到不同的結果,黃瓜在哪里獲得其連接設置?

我不知道為什么它不使用有效的連接來連接數據庫。 這需要大量調查。 但是,您可以嘗試解決方法。 添加以下行以創建“ Before掛鈎:

Before do
  ActiveRecord::Base.connection.verify!
end

我相信,這將解決您的問題,直到您找到真正的原因。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM