簡體   English   中英

在將Cucumber Selenium與Ruby結合使用時JavaScript中出現錯誤

[英]Error in JavaScript while using in Cucumber Selenium with Ruby

我正在嘗試使用帶有黃瓜框架的Selenium ruby​​中的以下代碼選擇一個下拉列表。我包括一個Javascript以選擇值。

When(/^user selects year as (\d+)$/) do |arg1|

  $driver.execute_script('document.getElementsByName("param[start_year]")[0].value=arg1;')

end

但是我遇到這樣的錯誤。請幫助我解決

arg1 is not defined (Selenium::WebDriver::Error::JavascriptError)

您正在執行的JavaScript的位中已硬編碼了變量arg1 。腳本會將其視為JavaScript變量-由於JavaScript空間中未定義此變量,因此會出現錯誤。

在其余的代碼中,我假設您實際上想將Ruby空間中定義的arg1變量的值傳遞到JavaScript代碼中。 我建議您嘗試一下:

When(/^user selects year as (\d+)$/) do |arg1|
  $driver.execute_script(%Q<document.getElementsByName("param[start_year]")[0].value="#{arg1}";>)
end

請注意,我使用了%Q文本定界符,以便可以將#{}文本插入與包含雙引號( " )的文本組合

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM