【发布时间】:2018-08-26 13:56:43
【问题描述】:
我正在尝试将 minitest 与 sintara 一起使用,我的问题是运行测试 (ruby test_login.rb) 无法找到登录页面,当我打印出文档 html 时,我得到了 sinatra 404 页面。我不知道如何将我的网络应用程序与这个测试程序连接起来,我搜索过的所有文档和以前的问题都没有任何帮助。
这是我的代码:
require 'sinatra/base'
require 'minitest/autorun'
require 'rack/test'
require 'minitest/spec'
require 'nokogiri'
require 'rack/test'
require_relative 'login'
class Test < MiniTest::Test`
include Rack::Test::Methods
def app
Sinatra::Application
end
def test_login
response = get ('/home')
doc = Nokogiri::HTML(response.body)
puts last_response
puts doc
#response = post '/login', username: 'test_user', password: 'password'
#get '/home'
#follow_redirect!()
#puts doc
#assert_equal "Admin", doc.at_css("#admin-block div h1")
end
end
请不要评论要求我使用不同的测试 gem。
谢谢
【问题讨论】:
-
您应该至少展示您的 Sinatra 应用程序的一些相关部分。由于(我假设)
response = get ('/home')有效,我想这不是 Minitest 或 Rack::Test 的问题,而是应用程序本身的问题。 -
response = get ('/home') 无法正常工作,因为控制台的输出是 404 页面,应该是主页。
标签: ruby testing sinatra rack minitest