Any contribution is welcome and encouraged.
Reporting an issue is the foremost way to contribute.
When reporting an issue, try to give as much details as possible. Ability to reproduce the issue is a priority. If you give an example that reproduces your issue you will have more chances to get it fixed.
Those details include:
Also always try to isolate the issue in an environment easy to reproduce with as few steps as possible.
Once you isolated the issue you can enable the debug mode of the library. That is achieved by adding the option "debugLogger" in the browser factory.
$browser = $browserFactory->createBrowser([
'debugLogger' => 'php://stdout'
]);
You will be provided with an output of what is happening within the library and that can help to figure out what is causing the issue.
Writting test is also a great way to contribute because it ensures that the library will remain consistent after any upgrade.
Implementing new features will allow anyone to take profit of your work. Just remember to rise an issue and discuss it before to make sure that the work goes in the right direction and you work will be approved.
In addition all contributions must be tested following as much as possible the current test structure:
test/suites
and the class must be annotated with @covers
.Look at current tests in test/suites
for more details.
We encourage anyone to improve the documentation by adding new example or by fixing current one that would be wrong or outdated.