Эх сурвалжийг харах

Fix #394: ensure proper webelement classes are used in Test::Seleinum::*

Also add a testing class for MS Edge
George S. Baugh 7 жил өмнө
parent
commit
0a86a0f9c2

+ 5 - 0
lib/Test/Selenium/Chrome.pm

@@ -3,6 +3,11 @@ package Test::Selenium::Chrome;
 use Moo;
 extends 'Selenium::Chrome', 'Test::Selenium::Remote::Driver';
 
+has 'webelement_class' => (
+    is      => 'rw',
+    default => sub {'Test::Selenium::Remote::WebElement'},
+);
+
 1;
 
 __END__

+ 28 - 0
lib/Test/Selenium/Edge.pm

@@ -0,0 +1,28 @@
+package Test::Selenium::Edge;
+
+use Moo;
+extends 'Selenium::Edge', 'Test::Selenium::Remote::Driver';
+
+has 'webelement_class' => (
+    is      => 'rw',
+    default => sub {'Test::Selenium::Remote::WebElement'},
+);
+
+1;
+
+__END__
+
+=head1 NAME
+
+Test::Selenium::Edge
+
+=head1 SYNOPSIS
+
+    my $test_driver = Test::Selenium::Edge->new;
+    $test_driver->get_ok('https://duckduckgo.com', "MS Edge can load page");
+    $test_driver->quit();
+
+=head1 DESCRIPTION
+
+A subclass of L<Selenium::Edge> which provides useful testing functions.  Please see L<Selenium::Edge> and L<Test::Selenium::Remote::Driver> for usage information.
+

+ 5 - 0
lib/Test/Selenium/Firefox.pm

@@ -3,6 +3,11 @@ package Test::Selenium::Firefox;
 use Moo;
 extends 'Selenium::Firefox', 'Test::Selenium::Remote::Driver';
 
+has 'webelement_class' => (
+    is      => 'rw',
+    default => sub {'Test::Selenium::Remote::WebElement'},
+);
+
 1;
 
 __END__

+ 5 - 0
lib/Test/Selenium/InternetExplorer.pm

@@ -3,6 +3,11 @@ package Test::Selenium::InternetExplorer;
 use Moo;
 extends 'Selenium::InternetExplorer', 'Test::Selenium::Remote::Driver';
 
+has 'webelement_class' => (
+    is      => 'rw',
+    default => sub {'Test::Selenium::Remote::WebElement'},
+);
+
 1;
 
 __END__

+ 5 - 0
lib/Test/Selenium/PhantomJS.pm

@@ -3,6 +3,11 @@ package Test::Selenium::PhantomJS;
 use Moo;
 extends 'Selenium::PhantomJS', 'Test::Selenium::Remote::Driver';
 
+has 'webelement_class' => (
+    is      => 'rw',
+    default => sub {'Test::Selenium::Remote::WebElement'},
+);
+
 1;
 
 __END__