1
0

12-reuse-session.t 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. use strict;
  2. use warnings;
  3. use Test::More;
  4. use Test::Selenium::Remote::Driver;
  5. use Selenium::Remote::Mock::RemoteConnection;
  6. use FindBin;
  7. use lib $FindBin::Bin . '/lib';
  8. use TestHarness;
  9. $Selenium::Remote::Driver::FORCE_WD2 = 1;
  10. my $harness = TestHarness->new(
  11. this_file => $FindBin::Script
  12. );
  13. my @browsers = qw/chrome firefox/;
  14. foreach (@browsers) {
  15. my %selenium_args = (
  16. default_finder => 'css',
  17. javascript => 1,
  18. %{ $harness->base_caps },
  19. browser_name => $_,
  20. );
  21. my $s1 = Test::Selenium::Remote::Driver->new(
  22. %selenium_args
  23. );
  24. my $s2 = Test::Selenium::Remote::Driver->new(
  25. %selenium_args,
  26. auto_close => 0,
  27. session_id => $s1->session_id,
  28. );
  29. my $s3 = Test::Selenium::Remote::Driver->new(
  30. %selenium_args,
  31. );
  32. is($s1->session_id, $s2->session_id, "session_id is reused when specified");
  33. isnt($s1->session_id, $s3->session_id, "session_id not reused");
  34. pass("session_id.1=". $s2->session_id);
  35. pass("session_id.2=". $s2->session_id);
  36. pass("session_id.3=". $s3->session_id);
  37. my $perl_title = 'The Perl Programming Language - www.perl.org';
  38. my $cpan_title = 'The Comprehensive Perl Archive Network - www.cpan.org';
  39. $s1->get_ok('http://perl.org/');
  40. $s1->title_is($perl_title, 'perl.org title matches correctly');
  41. $s3->get_ok('http://perl.org/');
  42. $s3->title_is($perl_title, 'perl.org title matches correctly');
  43. }
  44. done_testing;