NAME
BZ::Client::Test - Module for writing integration tests
SYNOPSIS
# Create a new instance, reading configuration from either of
# the given files.
my $tester = BZ::Client::Test->new(["config.pl", "t/config.pl"]);
my $skipping = $tester->isSkippingIntegrationTests();
if ($skipping) {
# Skip integration tests
} else {
my $client = $tester->client();
# Run the tests, using the given client.
}
CLASS METHODS
This section lists the class methods.
new
# Create a new instance, reading configuration from either of
# the given files.
my $tester = BZ::Client::Test->new(["config.pl", "t/config.pl"]);
# Create a new instance, providing configuration explicitly.
my $tester = BZ::Client->new("testUrl" => $url,
"testUser" => $user,
"testPassword" => $password);
Creates a new instance with a configuration for running integration tests. The configuration can be read from a config file or be provided explicitly.
INSTANCE METHODS
This section lists the instance methods.
isSkippingIntegrationTests
my $skipping = $tester->isSkippingIntegrationTests();
Returns, whether the tester is configured to skip integration tests. This is the case, if the method "testUrl" returns a an undefined value.
testUrl
my $url = $tester->testUrl();
$tester->testUrl($url);
Gets or sets the Bugzilla servers URL. This is also used to determine, whether the tester is able to run integration tests or not: If the URL is undefined, then integration tests will be skipped.
testUser
my $user = $tester->testUser();
$tester->testUser($user);
Gets or sets the Bugzilla servers user.
testPassword
my $password = $tester->testPassword();
$tester->testPassword($password);
Gets or sets the Bugzilla servers password.
client
my $client = $tester->client();
Creates an instance of BZ::Client, using the testers configuration. An exception is thrown, if the tester is unable to create a client object, because integration tests are being skipped.
SEE ALSO
L<BZ::Client>