我的表单中有一个组合框,我希望每次运行测试用例时,selenium ide都会从组合框列表中选择一个随机值。
在硒中我有这个:
Command: store
Target: javascript{Math.floor(Math.random())}
Value: man
并在下一步:
Command: select
Target: id of combo box
Value: ${man}
但是当我运行测试用例时;它会产生错误:
'[error]找不到标签'0'的选项'。
我该如何完成这项任务。
答案 0 :(得分:1)
您的java脚本代码始终将结果显示为0。您的java脚本需要稍作更改才能正常工作。使用以下代码
命令:存储目标: javascript {Math.floor(Math.random()* 3)} 值: man
这将在每次运行时给出0到2之间的随机值。公式中使用的值3是变量,它代表ComboBox中的项目数。如果你的ComboBox中有6个项目,那么你必须用6替换3。
下一行是根据id值
选择一个ComboBox项命令:选择目标: css =选择值: id = $ {man}
然而,有一个catch,为了使其工作,所有标签中应该有一个id属性,增量数值为0,1,2,..等。
例如,
<select>
<option id="0">Milk</option>
<option id="1">Tea</option>
<option id="2">Coffee</option>
</select>
或者它以你所写的方式工作,即
命令:选择目标: css =选择值: $ {man}
然后ComboBox应该有从0,1,2,3等增量的值。例如HTML代码就像,
<select>
<option>0</option>
<option>1</option>
<option>2</option>
</select>
根据您的最新回复,我修改了公式并且可以正常使用,
命令: storeEval 目标: {var myList = new Array(111,222,333,444,888,999,555,777,221,“ADA”,“AD”); myList [Math.floor(Math.random()* 11)]} 值: myListVal
命令:选择目标: css =选择值: $ {myListVal}
<强>详情
{var myList = new Array(111,222,333,444,888,999,555,777,221,“ADA”,“AD”); myList中[Math.floor(的Math.random()* 11)]}