Steward v3.0.0-beta Release Notes
Release Date: 2021-03-20 // over 3 years ago-
โ Added
- โ
--parallel-limit
(-l
) option ofrun
command to allow limiting maximum number of tests being run simultaneously. - โ Show test duration in timeline tooltips.
- ๐ PHP 8 support.
๐ Changed
- Require PHP 7.3+ and Symfony 5 components.
- โก๏ธ Update to namespaced PHPUnit. Set minimal required version to PHPUnit 8.5.
- ๐ Use php-webdriver 1.8+ with W3C WebDriver support.
- โก๏ธ Methods now uses strict type-hints and return type-hints. Inherited classes and interfaces (eg.
CustomCapabilitiesResolverInterface
,OptimizeOrderInterface
etc.) may require to be changed in accordance with this. - โ Simplified and improved test output.
- โ
RunTestsProcessEvent
(dispatched fromrun
command when initializing PHPUnit processes) now contains array of environment variables instead of ProcessBuilder. UsesetEnvironmentVars()
method to change the variables passed to the process. - 0๏ธโฃ Default browser size is now defined using class constants instead of class variables. To override the default, instead of
public static $browserWidth = ...;
usepublic const BROWSER_WIDTH = ...;
. - ๐ป When test class constants defining default browser width (
BROWSER_WIDTH
) or height (BROWSER_HEIGHT
) is set tonull
, no default browser window size will be set on test startup. - ๐ง Don't hardcode timezone to
Europe/Prague
. Timezone is now used based on your PHP settings (date.timezone). - Server URL now must be provided including URL prefix (if it has one, like
/wd/hub
) - eg.http://foo.bar:4444/wd/hub
. This means the/wd/hub
part is now never auto-amended. - ๐ฆ Package
symfony/polyfill-mbstring
now provides mbstring functions even if PHP mbstring extension is not installed. - ๐ป Read annotations (like
@group
,@noBrowser
etc.) using different and more-robust underlying libraries.
๐ Fixed
- ๐ป Remote server running in W3C-protocol mode (eg. Selenium v3.5.3+) was erroneously detected as BrowserStack cloud service.
--xdebug
option did not have any effect unless passed as the last option.- Properly auto-detect port 443 (not 80) when https server URL is used as
--server-url
. - โ
Do not start browser for test skipped because it was depending on some already failed test (using
@depends
annotation). - โ
Parsing the latest Selenium server version in
install
command. - ๐จ Do not print
Error closing the session, browser may died.
after Firefox closes the error.
โ Removed
- โ
TestUtils
class which was already deprecated in 2.1.- Instead of
TestUtils::setSelect2Value()
use directly the newSelect2
component andselectByVisiblePartialText()
method. - Instead of
TestUtils::getFixturePath()
useFacebook\WebDriver\Remote\FileDetector
instead. - Instead of
TestUtils::sleep()
useAbstractTestCase::sleep()
method instead.
- Instead of
getConfig()
method of ConfigProvider. Call the property instead directly on an instance of the ConfigProvider.- ๐ง
--fixtures-dir
option of therun
command,fixtures_dir
option of configuration file andConfigProvider->fixturesDir
variable. They were deprecated in version 2.1.0 and no longer used since. UniqueValue
component. (You may use Faker or some other library for similar use-case.)- โ
AbstractTestCaseBase
class. It should probably not affect anything, as it was only used internally. - โช Workarounds for legacy Firefox (version 47 and older) which are no longer needed.
- ๐ PhantomJS support.
- โ
Previous changes from v2.3.5
-
๐ Changed
- Replace facebook/webdriver with its successor php-webdriver/webdriver.