Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

seeCheckboxIsChecked and dontSeeCheckboxIsChecked have 'not found' error with unchecked checkboxes #22

Closed
martin-q opened this issue Dec 8, 2016 · 0 comments · Fixed by #60

Comments

@martin-q
Copy link

martin-q commented Dec 8, 2016

[edited ten minutes after original post, to provide a more accurate description of the problem]

What are you trying to achieve?

With this HTML fragment

<input type="checkbox" id="edit-menu-automenu" name="menu[automenu]" value="1"  checked="checked" class="form-checkbox" />

This test (1) succeeds:

$I->seeCheckboxIsChecked("#edit-menu-automenu")

And this test (2):

$I->dontSeeCheckboxIsChecked("#edit-menu-automenu")

correctly fails with

Failed asserting that 1 matches expected 0.

In the same way, with this HTML fragment

<input type="checkbox" id="edit-menu-automenu" name="menu[automenu]" value="1" class="form-checkbox" />

I expect this test (3) to succeed:

$I->dontSeeCheckboxIsChecked("#edit-menu-automenu")

(It does - apologies for earlier posting that it failed, I was so confused by then!)
And this test (4) should fail to assert that 0 is 1:

$I->seeCheckboxIsChecked("#edit-menu-automenu")

What do you get instead?

Tests (1), (2) and (3) produce the expected result.

Test (4) confusingly and misleadingly results in

 Fail  Element located either by name, CSS or XPath element with 'checkbox' was not found.

[snip]

 I am on page "/node/add/wildfire-page"
  [Request Headers] []
  [Page] /node/add/wildfire-page
  [Response] 200
  [Request Cookies] {"SESS618f2d31f67392cf8c1d5495d4d055fd":"StMnnMuMl0a09VgHE3iXd8UpOOqZiXxQKe3E3XEhdVE"}
  [Response Headers] {"Date":["Thu, 08 Dec 2016 13:24:47 GMT"],"Server":["Apache/2.4.16 (Ubuntu) PHP/5.5.32-1+deb.sury.org~precise+1"],"X-Content-Type-Options":["nosniff","nosniff"],"X-Powered-By":["PHP/5.5.32-1+deb.sury.org~precise+1"],"Expires":["Sun, 19 Nov 1978 05:00:00 GMT"],"Cache-Control":["no-cache, must-revalidate"],"Content-Language":["en"],"X-Frame-Options":["SAMEORIGIN"],"Vary":["Accept-Encoding"],"Transfer-Encoding":["chunked"],"Content-Type":["text/html; charset=utf-8"]}                                             
 I see element "#edit-menu-automenu"
 I see checkbox is checked "#edit-menu-automenu"
 FAIL 

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


Time: 24.71 seconds, Memory: 14.75MB

There was 1 failure:

---------
1) wfsampleAcceptanceCest: Create a page
 Test  tests/acceptance/wfsampleAcceptanceCest.php:debug
 Step  See checkbox is checked "#edit-menu-automenu"
 Fail  Element located either by name, CSS or XPath element with 'checkbox' was not found.

Scenario Steps:

 28. $I->seeCheckboxIsChecked("#edit-menu-automenu") at tests/acceptance/wfsampleAcceptanceCest.php:40
 27. $I->seeElement("#edit-menu-automenu") at tests/acceptance/wfsampleAcceptanceCest.php:39
 26. $I->amOnPage("/node/add/wildfire-page") at tests/acceptance/wfsampleAcceptanceCest.php:38
 25. $I->seeLink("Log out","/user/logout") at tests/_support/Page/Login.php:39
 24. $I->dontSee("Forgot your password?") at tests/_support/Page/Login.php:38
 23. $I->click("#edit-submit") at tests/_support/Page/Login.php:37

phar:///usr/local/bin/codecept/vendor/phpunit/phpunit/src/Framework/Constraint.php:58
phar:///usr/local/bin/codecept/vendor/phpunit/phpunit/src/Framework/Assert.php:2184
phar:///usr/local/bin/codecept/src/Codeception/Util/Shared/Asserts.php:267
phar:///usr/local/bin/codecept/src/Codeception/Lib/InnerBrowser.php:1512
phar:///usr/local/bin/codecept/src/Codeception/Lib/InnerBrowser.php:567
phar:///usr/local/bin/codecept/src/Codeception/Step.php:256
phar:///usr/local/bin/codecept/src/Codeception/Scenario.php:74
/home/mq/KM/git/kamedia/test_fixture/tests/_support/_generated/AcceptanceTesterActions.php:839
/home/mq/KM/git/kamedia/test_fixture/tests/acceptance/wfsampleAcceptanceCest.php:40
phar:///usr/local/bin/codecept/src/Codeception/Lib/Di.php:123
phar:///usr/local/bin/codecept/src/Codeception/Test/Cest.php:136
phar:///usr/local/bin/codecept/src/Codeception/Test/Cest.php:148
phar:///usr/local/bin/codecept/src/Codeception/Test/Cest.php:82
phar:///usr/local/bin/codecept/src/Codeception/Test/Test.php:90
phar:///usr/local/bin/codecept/vendor/phpunit/phpunit/src/Framework/TestSuite.php:728
phar:///usr/local/bin/codecept/src/Codeception/PHPUnit/Runner.php:98
phar:///usr/local/bin/codecept/src/Codeception/SuiteManager.php:162
phar:///usr/local/bin/codecept/src/Codeception/Codecept.php:183
phar:///usr/local/bin/codecept/src/Codeception/Codecept.php:152
phar:///usr/local/bin/codecept/src/Codeception/Command/Run.php:360
phar:///usr/local/bin/codecept/src/Codeception/Command/Run.php:287
phar:///usr/local/bin/codecept/vendor/symfony/console/Command/Command.php:255
phar:///usr/local/bin/codecept/vendor/symfony/console/Application.php:829
phar:///usr/local/bin/codecept/vendor/symfony/console/Application.php:191
phar:///usr/local/bin/codecept/vendor/symfony/console/Application.php:122
phar:///usr/local/bin/codecept/src/Codeception/Application.php:103
phar:///usr/local/bin/codecept/codecept:37
/usr/local/bin/codecept:7

Details

  • Codeception version: 2.2.7 and 2.1.8
  • PHP Version: 5.5.32-1+deb.sury.org~precise+1
  • Operating System: Kubuntu Precise 14.04 with kernel 4.2.0-41-generic
  • Installation type: Phar
  • List of installed packages (composer show)
  • Suite configuration:

codeception.yml

actor: Tester
paths:
    tests: tests
    log: tests/_output
    data: ../scald_kaltura/tests/acceptance/_data
    support: tests/_support
    envs: tests/_envs
settings:
    bootstrap: _bootstrap.php
    colors: true
    memory_limit: 1024M
extensions:
    enabled:
        - Codeception\Extension\RunFailed
modules:
    config:
        Db:
            dsn: ''
            user: ''
            password: ''
            dump: tests/_data/dump.sql

tests/acceptance.suite.yml

# Codeception Test Suite Configuration
#
# Suite for acceptance tests.
# Perform tests in browser using the WebDriver or PhpBrowser.
# If you need both WebDriver and PHPBrowser tests - create a separate suite.

class_name: AcceptanceTester
modules:
    enabled:
        - PhpBrowser:
            url: http://mq/wildfire207
        - \Helper\Acceptance
@Naktibalda Naktibalda transferred this issue from Codeception/Codeception Jan 10, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant