Bugzilla::Testopia::Webservice::TestRun
Bugzilla::Webservice
Provides methods for automated scripts to manipulate Testopia TestRuns
add_tag($run_ids, $tags)
Description: Add one or more tags to the selected test runs.
Params: $run_ids - Integer/Array/String: An integer or alias representing the ID in the database, an arry of run_ids or aliases, or a string of comma separated run_ids.
$tags - String/Array - A single tag, an array of tags, or a comma separated list of tags.
Returns: undef/Array: undef on success or an array of hashes with failure codes if a failure occured.
create($values)
Description: Creates a new Test 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 run to be created. +-------------------+----------------+-----------+------------------------------------+ | Field | Type | Null | Description | +-------------------+----------------+-----------+------------------------------------+ | plan_id | Integer | Required | ID of test plan | | environment | Integer/String | Required | ID or Name of Environment | | build | Integer/String | Required | ID or Name of Build | | manager | Integer/String | Required | ID or Login of run manager | | summary | String | Required | | | product_version | String | Optional | Defaults to plan's version | | plan_text_version | Integer | Optional | | | notes | String | Optional | | | status | Integer | Optional | 0:STOPPED 1: RUNNING (default 1) | +-------------------+----------------+-----------+------------------------------------+
Returns: The newly created object hash.
get($run_id)
Description: Used to load an existing test run from the database.
Params: $id - Integer/String: An integer representing the ID in the database for this run.
Returns: A blessed Bugzilla::Testopia::TestRun object hash
get_change_history($run_id)
Description: Get the list of changes to the fields of this run.
Params: $run_id - Integer/String: An integer representing the ID in the database or a string representing the unique alias for this run.
Returns: Array: An array of hashes with changed fields and their details.
get_completion_report($runs)
Description: Get a report of the current status of the selected runs combined.
Params: $runs - Integer/Array/String: An integer representing the ID in the database an array of integers or a comma separated list of integers.
Returns: Hash: A hash containing counts and percentages of the combined totals of case-runs in the run. Counts only the most recently statused case-run for a given build and environment.
get_tags($run_id)
Description: Get the list of tags attached to this run.
Params: $run_id - Integer/String: An integer representing the ID in the database or a string representing the unique alias for this run.
Returns: Array: An array of tag object hashes.
get_test_case_runs($run_id, $current)
Description: Get the list of cases that this run is linked to.
Params: $run_id - Integer/String: An integer representing the ID in the database for this run.
$current - Boolean: 1 to only include the current set (what is displayed in the web page) 0: to return all, current and historical.
Returns: Array: An array of test case object hashes.
get_test_cases($run_id)
Description: Get the list of cases that this run is linked to.
Params: $run_id - Integer/String: An integer representing the ID in the database for this run.
Returns: Array: An array of test case object hashes.
get_test_plan($run_id)
Description: Get the plan that this run is associated with.
Params: $run_id - Integer/String: An integer representing the ID in the database for this run.
Returns: Hash: A plan object hash.
list($query)
Description: Performs a search and returns the resulting list of test runs.
Params: $query - Hash: keys must match valid search fields.
+--------------------------------------------------------+ | Run Search Parameters | +--------------------------------------------------------+ | Key | Valid Values | | build | String: Product Name | | build_id | Integer | | environment | String: Product Name | | environment_id | Integer | | manager | A bugzilla login (email address) | | manager_type | (select from email_variants) | | milestone | String | | notes | String | | notes_type | (select from query_variants) | | plan_id | comma separated integers | | product | String: Product Name | | product_id | Integer | | run_id | comma separated integers | | run_status | 1: RUNNING 0: STOPPED | | summary | String | | summary_type | (select from query_variants) | | tags | String | | tags_type | (select from tag_variants) | | type_id | Integer | | version | String: Product version | +--------------------------------------------------------+
+--------------------------------------------------------+ | 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 0: first 25 | +--------------------------------------------------------+
+----------------------------------------------------+ | 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 runs are retuned in a list of hashes.
remove_tag($run_id, $tag)
Description: Remove a tag from a run.
Params: $run_id - Integer/String: An integer or alias representing the ID in the database.
$tag - String - A single tag to be removed.
Returns: 0 on success.
update($ids, $values)
Description: Updates the fields of the selected test run.
Params: $ids - Integer: A single TestRun ID.
$values - Hash of keys matching TestRun fields and the new values to set each field to. See L<create> for description +-------------------+----------------+ | Field | Type | +-------------------+----------------+ | plan_id | Integer | | environment | Integer/String | | build | Integer/String | | manager | Integer/String | | summary | String | | product_version | String | | plan_text_version | Integer | | notes | String | | status | Integer | +-------------------+----------------+
Returns: Hash: The updated test run object.
the Bugzilla::Testopia::TestRun manpage the Bugzilla::Webservice manpage
Greg Hendricks <ghendricks@novell.com>