2012-05-21 5 views

ответ

0
sub startup : Test(startup) { 

    my ($self) = @_; 
    my $arg = shift; 

    $self->{browser_type} = $arg->{browser}; 

    -------------------------------#some other code for myself 

    $self->{browser} = 
     Test::WWW::Selenium->new(
      host  => $self->{host}, 
      port  => $self->{port}, 
      browser  => $self->{browser_type}, 
      browser_url => $self->{test_url}, 
    ); 

В моем тестовом сценарии мне это нужно вызвать с помощью следующей

my $t1 = Test::Class::Selenium::TestCases->new(browser=>$browser,); 
Test::Class->runtests($t1); 
1

Я полагаю, вы хотите получить браузер, затем повторно использовать его для некоторых тестов, а затем уничтожить его позже? Поэтому просто используйте глобальное хранилище, которое вы создадите. Например:

my $browser = ''; 
sub b_connect : Test(startup) { 
    $browser = WWW::Selenium->new(host => "localhost", 
           port => 4444, 
           browser => "*iexplore", 
           browser_url => "http://www.google.com", 
          ); 
}; 

sub b_disconnect : Test(shutdown) { 
    $browser->close() 
}; 

Просто используйте тестер $ browser var в тестах.

+0

No. я прохожу список браузера в виде массива, и я получаю запуск выполняется для каждого браузера я Зачет как аргумент –

Смежные вопросы