Bugzilla::Testopia::Webservice::TestCaseRun
Bugzilla::Webservice
Provides methods for automated scripts to manipulate Testopia TestCaseRuns.
Test case-runs are the mapping of a test case in a given run for a particular build and environment. There are therefore two ways to refer to a given case-run:
By ID: The unique case_run_id By Combination: $run_id, $case_id, $build_id, $environment_id
TestCaseRun methods are therefore overloaded to support either of these two methods of looking up the case-run you are interested in.
EXAMPLE:
TestCaseRun->get($caserun_id)
TestCaseRun->get($run_id, $case_id, $build_id, $environment_id)
attach_bug($caserun_id, $bug_ids)
Description: Add one or more bugs to the selected test case-runs.
Params: $case_run_id - Integer: An integer representing the ID in the database.
$bug_ids - Integer/Array/String: An integer or alias representing the ID in the database, an array of bug_ids or aliases, or a string of comma separated bug_ids.
Returns: undef.
attach_bug($run_id, $case_id, $build_id, $environment_id, $bug_ids)
Description: Add one or more bugs to the selected test case-runs.
Params: $case_id - Integer: An integer representing the ID of the test case in the database. $run_id - Integer: An integer representing the ID of the test run in the database. $build_id - Integer: An integer representing the ID of the test build in the database. $environment_id - Integer: An integer representing the ID of the environment in the database.
$bug_ids - Integer/Array/String: An integer or alias representing the ID in the database, an array of bug_ids or aliases, or a string of comma separated bug_ids.
Returns: undef.
create($values)
Description: Creates a new Test Case Run object and stores it in the database.
Params: $values - Hash: A reference to a hash with keys and values matching the fields of the test case to be created. +--------------------+----------------+-----------+------------------------------------------------+ | Field | Type | Null | Description | +--------------------+----------------+-----------+------------------------------------------------+ | run_id | Integer | Required | Test Run Number | | case_id | Integer/String | Required | ID or alias of test case | | build | Integer/String | Required | ID or name of a Build in plan's product | | environment | Integer/String | Required | ID or name of an Environment in plan's product | | assignee | Integer/String | Optional | Defaults to test case default tester | | status | String | Optional | Defaults to "IDLE" | | case_text_version | Integer | Optional | | | notes | String | Optional | | | sortkey | Integer | Optional | a.k.a. Index | +--------------------+----------------+-----------+------------------------------------------------+ Valid statuses include: IDLE, PASSED, FAILED, RUNNING, PAUSED, BLOCKED
Returns: The newly created object hash.
detach_bug($caserun_id, $bug_id)
Description: Remove a bug from a test case-run.
Params: $caserun_id - Integer: An integer representing the ID in the database.
$bug_ids - Integer/Array/String: An integer or alias representing the ID in the database, an array of bug_ids or aliases, or a string of comma separated bug_ids.
Returns: undef.
detach_bug($run_id, $case_id, $build_id, $environment_id, $bug_id)
Description: Remove a bug from a test case-run.
Params: $case_id - Integer: An integer representing the ID of the test case in the database. $run_id - Integer: An integer representing the ID of the test run in the database. $build_id - Integer: An integer representing the ID of the test build in the database. $environment_id - Integer: An integer representing the ID of the environment in the database.
$bug_id - Integer: An integer or alias representing the ID of the bug in the database,
Returns: undef.
get($caserun_id)
Description: Used to load an existing test case-run from the database.
Params: $caserun_id - Integer: An integer representing the ID in the database for this case-run.
Returns: A blessed Bugzilla::Testopia::TestCase object hash
get($run_id, $case_id, $build_id, $environment_id)
Description: Used to load an existing test case from the database.
Params: $case_id - Integer: An integer representing the ID of the test case in the database. $run_id - Integer: An integer representing the ID of the test run in the database. $build_id - Integer: An integer representing the ID of the test build in the database. $environment_id - Integer: An integer representing the ID of the environment in the database.
Returns: A blessed Bugzilla::Testopia::TestCase object hash
get_bugs($caserun_id)
Description: Get the list of bugs that are associated with this test case.
Params: $caserun_id - Integer: An integer representing the ID in the database for this case-run.
Returns: Array: An array of bug object hashes.
get_bugs($run_id, $case_id, $build_id, $environment_id)
Description: Get the list of bugs that are associated with this test case.
Params: $case_id - Integer: An integer representing the ID of the test case in the database. $run_id - Integer: An integer representing the ID of the test run in the database. $build_id - Integer: An integer representing the ID of the test build in the database. $environment_id - Integer: An integer representing the ID of the environment in the database.
Returns: Array: An array of bug object hashes.
get_completion_time($caserun_id)
Description: Get the list of components attached to this case.
Params: $caserun_id - Integer: An integer representing the ID in the database for this case-run.
Returns: Array: An array of component object hashes.
get_completion_time($run_id, $case_id, $build_id, $environment_id)
Description: Get the list of components attached to this case.
Params: $case_id - Integer: An integer representing the ID of the test case in the database. $run_id - Integer: An integer representing the ID of the test run in the database. $build_id - Integer: An integer representing the ID of the test build in the database. $environment_id - Integer: An integer representing the ID of the environment in the database.
Returns: Array: An array of component object hashes.
get_history($caserun_id)
Description: Get the list of case-runs for all runs this case appears in. To limit this list by build or other attribute, see TestCaseRun::list.
Params: $caserun_id - Integer: An integer representing the ID in the database for this case-run.
Returns: Array: An array of case-run object hashes.
get_history($run_id, $case_id, $build_id, $environment_id)
Description: Get the list of case-runs for all runs this case appears in. To limit this list by build or other attribute, see TestCaseRun::list.
Params: $case_id - Integer: An integer representing the ID of the test case in the database. $run_id - Integer: An integer representing the ID of the test run in the database. $build_id - Integer: An integer representing the ID of the test build in the database. $environment_id - Integer: An integer representing the ID of the environment in the database.
Returns: Array: An array of case-run object hashes.
list($query)
Description: Performs a search and returns the resulting list of test cases.
Params: $query - Hash: keys must match valid search fields.
+--------------------------------------------------------+ | Case-Run Search Parameters | +--------------------------------------------------------+ | Key | Valid Values | | andor | 1: Author AND tester, 0: OR | | assignee | A bugzilla login (email address) | | assignee_type | (select from email_variants) | | build | String | | build_id | Integer | | case_id | comma separated integers | | case_run_status | String: Status | | case_run_status_id | Integer: Status | | case_summary | String: Requirement | | case_summary_type | (select from query_variants) | | category | String: Category Name | | category_id | Integer | | component | String: Component Name | | environment | String | | environment_id | Integer | | isactive | 0: Only show current 1: show all | | isautomated | 1: true 0: false | | milestone | String | | notes | String | | notes_type | (select from query_variants) | | plan_id | comma separated integers | | priority | String: Priority | | priority_id | Integer | | product | String | | product_id | Integer | | requirement | String: Requirement | | requirement_type | (select from query_variants) | | run_id | comma separated integers | | run_product_version | String | | run_status | 1: RUNNING 0: STOPPED | | tags | String | | tags_type | (select from tag_variants) | | testedby | A bugzilla login (email address) | | testedby_type | (select from email_variants) | +--------------------------------------------------------+
+---------------------------------------------------+ | Paging and Sorting | +---------------------------------------------------+ | Key | Description | | dir | "ASC" or "DESC" | | order | field to sort by | +---------------------------------------------------+ | page_size | integer: how many per page | | page | integer: page number | | +++++++ OR +++++++ | | start | integer: Start with which record | | limit | integer: limit to how many | +---------------------------------------------------+ | viewall | 1: returns all records | +---------------------------------------------------+
+----------------------------------------------------+ | query_variants | +----------------+-----------------------------------+ | Key | Description | | allwordssubstr | contains all of the words/strings | | anywordssubstr | contains any of the words/strings | | substring | contains the string | | casesubstring | contains the string (exact case) | | allwords | contains all of the words | | anywords | contains any of the words | | regexp | matches the regexp | | notregexp | doesn't match the regexp | +----------------+-----------------------------------+
+-------------------------------------+ | email_variants | +--------------+----------------------+ | Key | Description | | substring | contains | | exact | is | | regexp | matches regexp | | notregexp | doesn't match regexp | +--------------+----------------------+
+----------------------------------------------------+ | tag_variants | +----------------+-----------------------------------+ | Key | Description | | anyexact | is tagged with | | allwordssubstr | contains all of the words/strings | | anywordssubstr | contains any of the words/strings | | substring | contains the string | | casesubstring | contains the string (exact case) | | regexp | matches the regexp | | notregexp | doesn't match the regexp | | allwords | contains all of the words | | anywords | contains any of the words | | nowords | contains none of the words | +----------------------------------------------------+
Returns: Array: Matching test cases are retuned in a list of hashes.
lookup_status_name_by_id
Params: $id - Integer: ID of the case status to return
Returns: String: the status name.
lookup_status_id_by_name
Params: $name - String: the status name.
Returns: Integer: ID of the case status.
update($caserun_ids, $values)
Description: Updates the fields of the selected case-runs.
Params: $caserun_ids - Integer/String/Array Integer: A single TestCaseRun ID. String: A comma separates string of TestCaseRun IDs for batch processing. Array: An array of TestCaseRun IDs for batch mode processing
$values - Hash of keys matching TestCaseRun fields and the new values to set each field to. +--------------------+----------------+ | Field | Type | +--------------------+----------------+ | build | Integer/String | | environment | Integer/String | | assignee | Integer/String | | status | String | | notes | String | | sortkey | Integer | | update_bugs | Boolean | 1: Reopen bugs on FAILED 0: Don't change bug status +--------------------+----------------+
Returns: Hash/Array: In the case of a single object, it is returned. If a list was passed, it returns an array of object hashes. If the update on any particular object failed, the hash will contain a ERROR key and the message as to why it failed.
update($run_id, $case_id, $build_id, $environment_id, $values)
Description: Updates the fields of the selected case-run.
Params: $case_id - Integer: An integer representing the ID of the test case in the database. $run_id - Integer: An integer representing the ID of the test run in the database. $build_id - Integer: An integer representing the ID of the test build in the database. $environment_id - Integer: An integer representing the ID of the environment in the database.
$values - Hash of keys matching TestCaseRun fields and the new values to set each field to. See above.
Returns: Hash/Array: In the case of a single object, it is returned. If a list was passed, it returns an array of object hashes. If the update on any particular object failed, the hash will contain a ERROR key and the message as to why it failed.
the Bugzilla::Testopia::TestCaseRun manpage the Bugzilla::Webservice manpage
Greg Hendricks <ghendricks@novell.com>