[英]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.