Selenium IDE具有选定的选择元素

时间:2013-07-19 14:54:14

标签: testing selenium-ide jquery-chosen

我正在尝试使用Selenium IDE测试注册表单,但是在使用Chosen库中的select元素时出现问题: http://harvesthq.github.io/chosen/

我想知道你是否可以帮助我选择一个选项的命令(顺便提一下可能是任何选项)。我无法通过简单的mouseDown打开下拉列表。这是一个包含单选和多选的示例网页(从上面的存储库下载源文件。

<html>
<head>
    <link rel="stylesheet" href="chosen/public/chosen.min.css">
    <link rel="stylesheet" href="chosen/public/chosen.jquery.min.css">
    <script src="jquery-1.10.2.min.js"></script>
    <script src="chosen/public/chosen.jquery.min.js"></script>
</head>
<body>
    <select multiple class="chzn-select" style="width: 150px;">
        <option value="Test 1">Test 1</option>
        <option value="Test 2">Test 2</option>
        <option value="Test 3">Test 3</option>
    </select>
    <br><br>
    <select class="chzn-select" style="width: 150px;">
        <option value="Test A">Test A</option>
        <option value="Test B">Test B</option>
        <option value="Test C">Test C</option>
    </select>   

    <script type="text/javascript">
        $(".chzn-select").chosen();
    </script>
</body>
</html>

4 个答案:

答案 0 :(得分:6)

好的,我确实设法自己破解它,它就像:

  

命令:clickAt

     

目标:css =#id_country_chzn_o_1

(选择国家/地区列表中的第一项,使用Firebug查找您的ID名称)

答案 1 :(得分:1)

以下步骤解决了此问题: 第01步。

Command: clickAt
Target: id=iNationality_chosen

步骤02。

Command: clickAt
Target: css=div[id='iNationality_chosen'] div ul li:nth-child(2)

注意01: iNationality _chosen在这里你可以用你的元素ID替换id

注意02:li:nth-​​child( 2 ),您可以在这里提供您想要选择的任何号码。 2将选择第二个孩子(选项列表)。

答案 2 :(得分:0)

我之前有同样的问题。解决方案非常简单和正常。这是Selenium IDE中Select命令的最佳实践。这是:

  1. 命令:选择选择作为命令
  2. 目标:选择您要指向的元素ID
  3. :使用此格式设置您的值 index = 1 //这是最重要的事情,然后您可以将数字更改为您喜欢的数字
  4. 例如:

    1. 命令:选择
    2. 目标:id =省
    3. :index = 2
    4. 祝你好运!

答案 3 :(得分:0)

我使用selenium api和robotframework有类似的问题。该元素无法点击,因为已选择添加display:none。我通过执行删除style属性的jquery javascript解决了这个问题。

在机器人框架风格中:

  

执行Javascript $(“#id”)。removeAttr(“style”);

其中id是select的id。