Skip to content

1.3.0

Choose a tag to compare

@PrestaEdit PrestaEdit released this 01 Jul 10:57
· 59 commits to main since this release
eb77041

Backward-compatible feature release.

πŸš€ Features

  • CI-ready exit code β€” bin/prestaflow run now returns a non-zero exit code when any test fails, so CI can finally detect failures (previously it always exited 0).
  • JUnit XML report β€” new --junit[=path] flag (default prestaflow/junit.xml), consumable by GitHub Actions, GitLab and Jenkins. Failed tests reference their screenshot in the <failure> message and a <system-out> [[ATTACHMENT|…]] node.
  • BackOffice coverage (experimental) β€” menu-based admin navigation (goToSubMenu) and page objects for Products, Orders, Categories, Customers, Modules and Carriers, plus list / create / delete actions on the Products page, with demonstrator suites.
  • Browser-free test harness β€” new composer test-unit (PHPUnit) with 32 unit tests covering exit codes, JUnit serialisation, screenshots, page factorization and BackOffice page resolution.
  • Add store / retrieve helpers to TestsSuite to pass values between steps.
  • Add i18n support to Expect messages.
  • Add console / log methods to emit debug information from a test suite.

πŸ’‘ Improvements

  • Page factorization β€” v7/v8/v9 pages factored into a shared src/Pages/Common/ tree with thin per-version stubs, so a change is made once instead of three times (importPage() and composer.json unchanged).
  • Bundled dependency β€” vendored nunzion/php-expect into lib/php-expect/ (MIT); the upstream Bitbucket dependency was no longer reliably installable.
  • Configurable screenshot delay via PRESTAFLOW_SCREENSHOT_DELAY (default 3 seconds, 0 disables it).
  • Show an "Open screenshot" link when the terminal supports file URLs (iTerm.app, VS Code).
  • Product price with a currency string is converted to a numeric value.
  • Allow a .env.local file to override values in a development project.

πŸ› Bug fixes

  • Screenshot on failure is no longer silently lost in standalone mode β€” the errors directory is created before saving, and the broken terminal link path is fixed.
  • Screenshot capture failures are surfaced as a debug line instead of being swallowed.
  • Various bug fixes.

⚠️ Experimental / @unverified: the BackOffice #subtab-Admin* menu and product-form selectors are best-effort PrestaShop 9 conventions not yet validated against a live shop (they differ on 1.7 / 8). The browser suites will need their selectors corrected against a real shop before they pass. These page classes are additive and have no impact on existing functionality.