【问题标题】:Codeception click input radioCodeception 点击​​输入单选
【发布时间】:2015-04-29 13:45:15
【问题描述】:

在我的网站上,我开始使用 codeception 来执行测试。 在一个页面上,我有一个表单,其中包含一些字段来填充数据以执行电子邮件测试内容。问题是这个表单有一些输入类型的收音机。此输入位于 div 内部。在这篇文章的最后将给出一个例子来更好地理解我的问题。我的问题是我无法检查此输入。我曾尝试使用 checkOption、selectOption、click 功能,但它们根本不起作用。 这是一些html:

http://pastebin.com/mDDZmAYv#

我该如何解决这个问题?

【问题讨论】:

    标签: testing codeception


    【解决方案1】:

    我在一个 div 中还有两个单选按钮,我使用过这样的代码

    $I->selectOption('.radio-tab:nth-child(1)', '2'); // if you have multiple radio button
    

    在你的情况下,你可以这样使用:

    $I->selectOption('.form-radio, '123'); //accessing by class name and giving value.
    

    【讨论】:

      【解决方案2】:

      您如何使用 Codeception(Webdriver、PHPUnit 等)?

      如果你在 PHP 和 WebDriver 中使用它,试试这个:

      $I->click('[name=[event_id"]');

      祝你好运。

      【讨论】:

        【解决方案3】:

        由于上述选项不起作用,至少对我来说,我找到了一些东西。如果您使用 WebDriver 进行验收测试,请尝试:

        $I->click('label[for="id_of_your_option"]');
        

        【讨论】:

          【解决方案4】:

          对于棘手的 UI 内容,您可以使用 executeJS 方法,因此使用原生 JS:

          $I->executeJS('document.getElementById("edit-").checked = true;');
          

          或者使用 jQuery:

          $I->executeJS('$("edit-").prop("checked", true);');
          

          对于取消选中显然只需使用 false。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2015-05-27
            • 1970-01-01
            • 2016-08-14
            • 1970-01-01
            • 1970-01-01
            • 2014-12-13
            • 1970-01-01
            相关资源
            最近更新 更多