azawawi / raku-selenium-webdriver

Raku bindings for Selenium WebDriver

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Selenium::WebDriver

Actions Status

This module provides the Raku bindings for the Selenium WebDriver Wire Protocol.

Note: This module is a work in progress. Please see its project status here.

Example

use v6;
use Selenium::WebDriver::PhantomJS;

my $driver = Selenium::WebDriver::PhantomJS.new;
$driver.url("http://google.com");
say "Title: "         ~ $driver.title;
say "URL: "           ~ $driver.url;
say "Source length: " ~ $driver.source.chars;
$driver.save-screenshot('test.png');
LEAVE {
  $driver.quit if $driver.defined
};

For more examples, please see the examples folder.

PhantomJS Installation

Linux/Debian

To install phantomjs on Debian, please type the following:

$ sudo apt-get install phantomjs

CAUTION: Also there are prebuilt binaries for PhantomJS for Linux if the packaged version is a bit old.

Mac OS X

To install PhantomJS on Mac OS X, the simplest solution is to use brew:

$ brew update
$ brew install phantomjs

Windows

To install PhantomJS on windows, please download a copy from Here and then make it available in your PATH environment variable.

Travis CI

Travis CI comes with pre-installed PhantomJS. No special instructions are needed.

Project Status

Web Driver Status
PhantomJS DONE but needs more tests
Firefox DONE
Chrome DONE but needs external chromedriver
Safari Pending
Opera Pending
MSIE Pending
MSEdge Pending
BlackBerry DONE

Installation

To install it using zef (a module management tool bundled with Rakudo Star):

$ zef install Selenium::WebDriver

Testing

  • To run tests:
$ prove --ext .rakutest -ve "raku -I."
  • To run all tests including author tests (Please make sure Test::Meta is installed):
$ zef install Test::META
$ TEST_AUTHOR=1 prove --ext .rakutest -ve "raku -I."

Author

Ahmad M. Zawawi, azawawi on #raku

License

MIT License

About

Raku bindings for Selenium WebDriver

License:MIT License


Languages

Language:Raku 100.0%