集成测试HTML特殊字符

时间:2013-12-02 21:19:15

标签: html ruby-on-rails rspec capybara capybara-webkit

有点奇怪,但在我看来,我有一个勾号(✔)和十字(×)用作链接(代替图像)。有没有找到这些元素并使用RSpec和Capybara-webkit测试它们的方法,或者我应该尝试定位说明title属性而忽略这条路线?

我的测试结果如下:

context "casting a vote", js: true do
  before do
    sign_in user
    click_link '✔'
    sleep 0.2
  end

  it { should have_content("Vote cast!") }
end

我得到的失败信息是(可预见的):

Failure/Error: click_link "raw('✔')"
Capybara::ElementNotFound:
Unable to find link "raw('✔')"

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:-1)

Capybara没有看到HTML,它通过DOM运行,然后DOM看到那些事物编码的实际值。您必须将原始代码作为包含代码点本身的UTF- {8,16}字符串发送。

大多数语言都会将'✔'显示为"\u10004",所以请尝试。