测试flash消息的内容:`由于css选择器无效,因此未运行断言

Nic*_*ick 3 ruby testing integration-testing ruby-on-rails ruby-on-rails-4

我想测试一下flash消息是否包含某些文本.所以我有这条线:

assert_select flash[:info], "Your fee is valid till"
Run Code Online (Sandbox Code Playgroud)

然而,这失败并显示错误消息:

DEPRECATION WARNING: The assertion was not run because of an invalid css selector.
unexpected '#' after ''
Run Code Online (Sandbox Code Playgroud)

有谁知道我做错了什么?

San*_*rma 10

试试这个.

assert_equal "Your fee is valid till", flash[:info] 
Run Code Online (Sandbox Code Playgroud)

要么

assert_select 'div.alert-info', flash[:info]
Run Code Online (Sandbox Code Playgroud)


Bab*_*bar 3

仅用于测试您不需要的消息assert_select。只会assert做。如果您想测试打印的 HTML,请使用assert_select. 第一个参数assert_select是 HTML 选择器,例如div.