Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-71622

Investigate behat/mink-extension alternatives

XMLWordPrintable

    • MOODLE_311_STABLE, MOODLE_400_STABLE
    • MOODLE_311_STABLE
    • Hide

      Better tested by some dev.

      Basically this is about to run some behat jobs and verify that there aren't PHP Deprecated messages. Can be done locally or using ci.moodle.org infrastructure.

      Requirements:

      • PHP: 8.0.x
      • Database: any (postgres or mysql are ok, and quicker).
      • tags: @~javascript

      Steps:

      • Run a job with the requirements above against integration.git (311 and master branches). Wait it to end (should pass ok, but we are not testing that here).
      • Verify that the output of the local execution (or the console output -> plain text in ci.moodle.org execution) doesn't have any Deprecated: PHP message.
      Show
      Better tested by some dev. Basically this is about to run some behat jobs and verify that there aren't PHP Deprecated messages. Can be done locally or using ci.moodle.org infrastructure. Requirements: PHP: 8.0.x Database: any (postgres or mysql are ok, and quicker). tags: @~javascript Steps: Run a job with the requirements above against integration.git (311 and master branches). Wait it to end (should pass ok, but we are not testing that here). Verify that the output of the local execution (or the console output -> plain text in ci.moodle.org execution) doesn't have any Deprecated: PHP message.

      Working on MDL-70745 (php80 epic) it was detected that behat/mink-extension, part of out behat tool-chain... is not ready for php8.

      The problem, right now, doesn't go beyond displaying some PHP Warnings, and normally allow CI tools to pass (ci.moodle.org, GHA integrations...)... although... if the tool performs any output/error analysis (for example moodle-plugin-ci with travis), it fails.

      PHP Deprecated:  Method ReflectionParameter::getClass() is deprecated in /h  
      538  ome/travis/build/moodle/vendor/behat/mink-extension/src/Behat/MinkExtension  
      539  /ServiceContainer/Driver/GoutteFactory.php on line 119                       
      540  PHP Deprecated:  Method ReflectionParameter::getClass() is deprecated in /h  
      541  ome/travis/build/moodle/vendor/behat/mink-extension/src/Behat/MinkExtension  
      542  /ServiceContainer/Driver/GoutteFactory.php on line 119
      

      In any case, this is only the detail that raised the alarms.

      The current status is that, while the extension is not officially abandoned... in practice it has not received any update since 2018 and, also, they aren't proceeding to fix or process stuff. See, for example, https://github.com/Behat/MinkExtension/pull/373 about the PHP Warnings problem commented above.

      So this issue is about consider which alternatives we have, understanding that the extension is a MUST in our Behat tool-chain.

            stronk7 Eloy Lafuente (stronk7)
            stronk7 Eloy Lafuente (stronk7)
            Nobody Nobody (Inactive)
            Andrew Lyons Andrew Lyons
            Michael Hawkins Michael Hawkins
            Votes:
            1 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved:

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 1 hour, 56 minutes
                1h 56m

                  Error rendering 'clockify-timesheets-time-tracking-reports:timer-sidebar'. Please contact your Jira administrators.