GithubHelp home page GithubHelp logo

opportunitylivetv / php-webdriver Goto Github PK

View Code? Open in Web Editor NEW

This project forked from php-webdriver/php-webdriver

1.0 3.0 1.0 2.27 MB

A php client for webdriver.

License: Apache License 2.0

PHP 98.31% HTML 1.69%

php-webdriver's Introduction

php-webdriver โ€“ Selenium WebDriver bindings for PHP

Latest Stable Version Travis Build Sauce Test Status Total Downloads License

Description

Php-webdriver library is PHP language binding for Selenium WebDriver, which allows you to control web browsers from PHP.

This library is compatible with Selenium server version 2.x and 3.x. It implements the JsonWireProtocol, which is currently supported by the Selenium server and will also implement the W3C WebDriver specification in the future.

The concepts of this library are very similar to the "official" Java, .NET, Python and Ruby bindings from the Selenium project.

This is new version of PHP client, rewritten from scratch starting 2013. Using the old version? Check out Adam Goucher's fork of it.

Looking for API documentation of php-webdriver? See https://facebook.github.io/php-webdriver/

Any complaint, question, idea? You can post it on the user group https://www.facebook.com/groups/phpwebdriver/.

Installation

Installation is possible using Composer.

If you don't already use Composer, you can download the composer.phar binary:

curl -sS https://getcomposer.org/installer | php

Then install the library:

php composer.phar require facebook/webdriver

Getting started

All you need as the server for this client is the selenium-server-standalone-#.jar file provided here: http://selenium-release.storage.googleapis.com/index.html

Download and run that file, replacing # with the current server version. Keep in mind you must have Java 8+ installed to start this command.

java -jar selenium-server-standalone-#.jar

(Please see note below when using Firefox.)

Then when you create a session, be sure to pass the url to where your server is running.

// This would be the url of the host running the server-standalone.jar
$host = 'http://localhost:4444/wd/hub'; // this is the default
Launch Firefox

Make sure to have latest Firefox and Geckodriver installed.

Because Firefox (and Geckodriver) only supports new W3C WebDriver protocol (which is yet to be implemented by php-wedbriver - see issue #469), the protocols must be translated by Selenium server - this feature is partially available in Selenium server version 3.5.0-3.8.1 and you can enable it like this:

java -jar selenium-server-standalone-3.8.1.jar -enablePassThrough false

Now you can start Firefox from your code:

$driver = RemoteWebDriver::create($host, DesiredCapabilities::firefox());
Launch Chrome

Make sure to have latest Chrome and Chromedriver installed.

$driver = RemoteWebDriver::create($host, DesiredCapabilities::chrome());
You can also customize the desired capabilities
$desired_capabilities = DesiredCapabilities::firefox();
$desired_capabilities->setCapability('acceptSslCerts', false);
$driver = RemoteWebDriver::create($host, $desired_capabilities);

Changelog

For latest changes see CHANGELOG.md file.

More information

Some how-tos are provided right here in our GitHub wiki.

You may also want to check out the Selenium docs and wiki.

Testing framework integration

To take advantage of automatized testing you will most probably want to integrate php-webdriver to your testing framework. There are some project already providing this:

Support

We have a great community willing to try and help you!

  • Via our Facebook Group - If you have questions or are an active contributor consider joining our facebook group and contributing to the communal discussion and support.
  • Via StackOverflow - You can also ask a question or find many already answered question on StackOverflow.
  • Via GitHub - Another option if you have a question (or bug report) is to submit it here as an new issue.

Contributing

We love to have your help to make php-webdriver better. See CONTRIBUTING.md for more information about contributing and developing php-webdriver.

php-webdriver's People

Contributors

ondram avatar whhone avatar gfosco avatar cbergau avatar v-slenter avatar ashleydw avatar volch avatar okrad avatar phelipealves avatar gkralik avatar localheinz avatar andrefortin avatar carusogabriel avatar dgcarramona avatar dsereni avatar davidsickmiller avatar sepehr avatar davertmik avatar mordred avatar jonstjohn avatar jsifalda avatar flarnie avatar danielbeardsley avatar akshayminocha5 avatar tecnocat avatar michaelrijsdijk avatar ninoskopac avatar black-silence avatar qheaden avatar sc0ttdav3y avatar

Stargazers

 avatar

Watchers

James Cloos avatar  avatar  avatar

Forkers

martina6hall

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.