You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Watir 6.8.4下拉框选择问题求助:Ruby代码无法运行

Fixing Watir Dropdown Selection Failure (Ruby 2.4.3, Firefox 47)

Hey Veena, let's get that dropdown selection working. I've tackled similar issues with older Watir/Firefox setups, so here's what to check step by step:

1. Fix the Watir Element Locator Syntax

The first likely issue is your use of b.select(id: 'curLocation')—Watir uses select_list to locate dropdown elements, not select (the select method is meant for choosing options once you've found the dropdown). Update your code to either of these working versions:

# Explicitly target the option by text
b.select_list(id: 'curLocation').option(text: 'Chennai').select

# Shorter, cleaner version (Watir auto-matches text/value/index)
b.select_list(id: 'curLocation').select('Chennai')

2. Resolve Firefox 47 & Watir 6.8.4 Compatibility

Firefox 47 is quite an old release, and Watir 6.x defaults to using Marionette (GeckoDriver), which can have compatibility issues with early Firefox versions. Try initializing your browser with Marionette disabled to use the older, more compatible FirefoxDriver:

b = Watir::Browser.new :firefox, marionette: false

3. Wait for the Dropdown to Fully Load

Sometimes your code runs before the dropdown is rendered on the page. Add a wait to ensure the element is present before attempting selection:

dropdown = b.select_list(id: 'curLocation')
dropdown.wait_until_present # Waits up to 30 seconds by default
dropdown.select('Chennai')

4. Verify the Dropdown ID is Correct

Double-check that the dropdown's HTML ID is exactly curLocation using your browser's dev tools (F12). Typos or dynamic IDs are easy to miss and will break element location entirely.

5. Confirm Cucumber Context Setup

Make sure your b browser instance is properly initialized and accessible within your Cucumber step definition. If the instance isn't passed correctly across steps, your code won't be able to interact with the browser at all.

Start with the syntax fix—this is the most common culprit here. If that doesn't resolve the issue, move on to adjusting the Firefox driver settings for compatibility.

内容的提问来源于stack exchange,提问作者Veena MB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:09:49