/
firefox.t
executable file
·37 lines (28 loc) · 963 Bytes
/
firefox.t
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#!/usr/bin/env perl6
use v6;
use lib 'lib';
use Test;
plan 5;
use Selenium::WebDriver::Firefox;
# Create new firefox webdriver. Please note firefox must be already
# installed and configured in PATH
my $driver = Selenium::WebDriver::Firefox.new;
# Navigate to google.com
$driver.url( "http://google.com" );
ok $driver.title ~~ / 'Google' /, "Google in title";
ok $driver.url ~~ / ^ 'http' 's'? '://' .+? 'google'/, "google.com in url";
# Find search box and then type "Perl 6" in it
my $search-box = $driver.element-by-name( 'q' );
$search-box.send-keys( "Perl 6" );
ok $search-box.tag-name.lc eq 'input', "Search box must be an <input>";
ok $search-box.enabled, "Search box is enabled";
# Submit form
$search-box.submit;
# Take a screenshot
my $filename = 'output.png';
$driver.save-screenshot( $filename );
ok $filename.IO ~~ :e, "$filename exists";
LEAVE {
diag 'WebDriver cleanup';
$driver.quit if $driver.defined;
}