Robot Framework + Selenium 怎么选择下来框

本文详细介绍了网页中下拉列表框的基本概念、源代码结构及其使用的关键字,特别是如何使用SelectFromList及其变体来操作单选或多选的下拉列表框。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下拉列表框,通常我们简称下拉框,一般是单选的,也有多选的,其实不管是单选还是多选的,都是列表框,源代码里都是<select>标签的。

我们先说说单选的,比如下面这种:


我们可以看一下对象的HTML源代码


<select id="selectdemo" name="selectdemo">
<option value="item1">第一个元素</option>
<option value="item2">第二个元素</option>
<option value="item3">第三个元素</option>
</select>


<select>...</select>这个标签整体就是一个下拉列表框,每一个<option>就是一个选项。


对于下拉列表框我们要去选择一个选项,所以我们用到的关键字是Select From List,关键字直接翻译就是从列表里选择。同时也可以几个其他的关键字,我们看一下F5里这几个关键字:


除了Select From List还有Select From List By xxx,xxx包括Index、Label和Value,如果你不知道自己选的值是什么的话,用不带By的Select From List就可以了。不过这样可能会略微慢一些,如果你想更快一些的话,最好是你要知道你写的值是Index还是Label还是Value。


<option value="item1">第一个元素</option>


比如这个选项,我们要选择它的时候很多人会错误的写成这样:




Select From List By Value id=selectdemo 第一个元素


结合前面几个option一起说,Index就是顺序或者序号,也就是说你要选择第几个选项,所以通过顺序来选择的话要用By Index的关键字,注意Index是从0开始的,也就是说选择第一个选项的话,要用0;Label是什么呢,其实你看到的文字就是Label,所以如果你想用“第一个元素”来选择选项,前面的关键字要用By Label;Value是选项的值,这个是在源码里才能看的,比如第一个选项的value="item1",所以如果前面如果用By Value的关键字,后面的参数要用item1。


前面说了单选,而多选其实不太需要说什么,和单选是一样的,如果你仔细看关键字的参数,*items,也就是支持List变量,可以传多个item,例如用By Index的时候要选择第1和第3个选项的话,后面要传递 0   2的参数(每个一格)。


But,现在更多的同学碰到的是假的List,也就是看起来是个下拉列表,但是其实查看源代码是DIV实现的,这种就肯定不能用Select From List的关键字了。但是我也并没有特别好的方案,一般只能用xpath或css取定位到对象去Click Element了。遇到了只能说比较坑。。。


对于下拉列表的案例,这里贴一个例子好了:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值