【问题标题】:cucumber test gives error - Selenium::WebDriver::Error::JavascriptError黄瓜测试给出错误 - Selenium::WebDriver::Error::JavascriptError
【发布时间】:2014-07-24 18:59:53
【问题描述】:

我的页面中有一个 tinymca 的 iframe,我想用黄瓜测试填充该 tinymca 编辑器。每当我运行我的测试时,它都会给我 jQuery 未定义的错误

在我的 Gemfile 中

source 'http://rubygems.org'
ruby '2.0.0'

gem 'capybara'
gem 'capybara-mechanize', :git => 'git://github.com/JerryWho/capybara-mechanize.git',      :branch => 'relative-redirects'
gem 'rspec'
gem 'cucumber'
gem 'launchy'
gem 'pry'
gem 'selenium-webdriver' 

这是我的场景

Scenario: admin puts all the valid and require data  
    when Job added with all the valid and require data
    Then I should see the success message.

这是该测试的步骤

Given(/^I am logged in as a company admin$/) do
   visit('/')
   fill_in "log", :with => "admin@email.com"
   fill_in "pwd", :with => "password"
   click_button "submit"
end

When(/^Job added with all the valid and require data$/) do
   visit('/site/admin/posts/add/')
   within_frame 'questiontextarea_ifr' do
       page.execute_script("jQuery(tinymce.editors[0].setContent('my content hersssssssssse'))")
   end
   click_button "Save"
end

Then(/^I should see the success message\.$/) do
   page.should have_content('Success Your post has been successfully added.')   
end

但它给了我错误jQuery is not defined (Selenium::WebDriver::Error::JavascriptError)

【问题讨论】:

    标签: tinymce cucumber capybara


    【解决方案1】:

    这很可能是因为“未定义 jQuery”,正如消息所建议的那样。

    请尝试不使用 jQuery,但使用原生 TinyMCE API 调用:

    page.execute_script("tinyMCE.activeEditor.setContent('my content hersssssssssse')")
    

    进一步阅读:Test WYSIWYG editors using Selenium WebDriver 纯 Ruby(不是 Capybara)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多