Rails3:使用 Capybara 进行测试时如何使用 UTF-8
我使用 Rails 3、Capybara 0.4.0、Akephalos (https://github.com/sorentwo/akephalos) Selenium-webdriver 和 Rspec 2。我使用 ruby 1.9
我有以下规范:
scenario "Create a new Group course with complex name" do
school = School.make!
switch_to_subdomain(school)
course_group = CourseGroup.make
click_link("Asignaturas")
click_link("Nuevo grupo")
fill_in('Nombre del curso', :with => 'Cuarto de E.S.O - Opción de Ciencias')
fill_in('course_group_courses_attributes_0_name', :with => 'Laboratorio')
save_and_open_page
click_button("Create Course group")
page.has_content?("Curso creado").should == true
course_groupDB = CourseGroup.where(:name => 'Cuarto de E.S.O - Opción de Ciencias').first
course_groupDB.name.should == 'Cuarto de E.S.O - Opción de Ciencias'
end
如果我使用 Selenium 作为驱动程序,则全部是正确的。但是当我使用 Akephalos 时,我得到:
Failure/Error: course_groupDB.name.should == 'Cuarto de E.S.O - Opción de Ciencias'
undefined method `name' for nil:NilClass
这意味着数据库中没有具有该名称的模型。它没有被保存。问题是,它已保存,但包含非 utf 字符。
如何确定使用的是utf?
I use Rails 3, Capybara 0.4.0, Akephalos (https://github.com/sorentwo/akephalos) Selenium-webdriver and Rspec 2. I use ruby 1.9
I have the following spec:
scenario "Create a new Group course with complex name" do
school = School.make!
switch_to_subdomain(school)
course_group = CourseGroup.make
click_link("Asignaturas")
click_link("Nuevo grupo")
fill_in('Nombre del curso', :with => 'Cuarto de E.S.O - Opción de Ciencias')
fill_in('course_group_courses_attributes_0_name', :with => 'Laboratorio')
save_and_open_page
click_button("Create Course group")
page.has_content?("Curso creado").should == true
course_groupDB = CourseGroup.where(:name => 'Cuarto de E.S.O - Opción de Ciencias').first
course_groupDB.name.should == 'Cuarto de E.S.O - Opción de Ciencias'
end
If I use Selenium as a driver all is right. But When I use Akephalos I get:
Failure/Error: course_groupDB.name.should == 'Cuarto de E.S.O - Opción de Ciencias'
undefined method `name' for nil:NilClass
Which means that there is no model in the database with that name. It wasn't saved. The thing is, it was saved, but with non-utf characters.
How can I make sure that utf is used?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我做了一个添加对 utf8 支持的 fork。
https://github.com/Nerian/akephalos
I made a fork that add support for utf8.
https://github.com/Nerian/akephalos