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

使用Elixir的Hound进行集成测试时,如何选择下拉列表选项?

当然可以用Hound实现下拉列表选择!

别担心,Hound其实有专门处理<select>下拉框的API,只是可能你没在文档里挖到对应的部分😉。你可以用select_option/2函数来完成这个操作,它支持多种方式定位选项,下面给你几个实用的例子:

1. 通过选项的value属性选择

这是最直接的方式,对应你代码里的paris、london这些值:

# 定位下拉框元素,然后选择value为"paris"的选项
select_option({:id, "cities"}, "paris")

2. 通过选项的显示文本选择

如果你更倾向于用可见的文本内容来选择(比如"London"),可以用:text关键字参数:

select_option({:id, "cities"}, text: "London")

3. 通过选项的索引选择

索引从0开始计数,比如第三个选项Rome对应的索引是2:

select_option({:id, "cities"}, index: 2)

额外小提示

为了避免因页面加载延迟导致的元素找不到问题,建议先等待下拉框元素加载完成再执行选择操作:

# 等待id为"cities"的元素出现
wait_for_element({:id, "cities"})
# 再执行选择
select_option({:id, "cities"}, "rome")

另外,除了用:id定位元素,你也可以用CSS选择器、XPath等Hound支持的定位方式,比如:

select_option({:css, "#cities"}, text: "Paris")

内容的提问来源于stack exchange,提问作者Ronan Boiteau

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 04:12:03