Bugzilla::Testopia::Webservice::TestPlan
Bugzilla::Webservice
Provides methods for automated scripts to manipulate Testopia TestPlans
add_tag($plan_ids, $tags)
Description: Add one or more tags to the selected test plans.
Params: $plan_ids - Integer/Array/String: An integer or alias representing the ID in the database,
an arry of plan_ids or aliases, or a string of comma separated plan_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 Plan 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 plan to be created.
+-------------------------+----------------+-----------+------------------------------------+
| Field | Type | Null | Description |
+-------------------------+----------------+-----------+------------------------------------+
| product | Integer/String | Required | ID or Name of product |
| name | String | Required | |
| type | Integer/String | Required | ID or name of plan type |
| default_product_version | String | Required | |
| isactive | Boolean | Optional | 0: Archived 1: Active (Default 1) |
+-------------------------+----------------+-----------+------------------------------------+
Returns: The newly created object hash.
get($plan_id)
Description: Used to load an existing test plan from the database.
Params: $id - Integer/String: An integer representing the ID in the database
for this plan.
Returns: A blessed Bugzilla::Testopia::TestPlan object hash
get_change_history($plan_id)
Description: Get the list of changes to the fields of this plan.
Params: $plan_id - Integer/String: An integer representing the ID in the database
or a string representing the unique alias for this plan.
Returns: Array: An array of hashes with changed fields and their details.
get_tags($plan_id)
Description: Get the list of tags attached to this plan.
Params: $plan_id - Integer/String: An integer representing the ID in the database
or a string representing the unique alias for this plan.
Returns: Array: An array of tag object hashes.
get_test_cases($plan_id)
Description: Get the list of cases that this plan is linked to.
Params: $plan_id - Integer/String: An integer representing the ID in the database
for this plan.
Returns: Array: An array of test case object hashes.
get_test_runs($plan_id)
Description: Get the list of runs in this plan.
Params: $plan_id - Integer/String: An integer representing the ID in the database
for this plan.
Returns: Array: An array of test run object hashes.
get_text($plan_id, $version)
Description: The associated large text fields: Action, Expected Results, Setup, Breakdown
for a given version.
Params: $plan_id - Integer/String: An integer representing the ID in the database
or a string representing the unique alias for this plan.
$version - Integer: (OPTIONAL) The version of the text you want returned.
Defaults to the latest.
Returns: Hash: Text fields and values.
list($query)
Description: Performs a search and returns the resulting list of test plans.
Params: $query - Hash: keys must match valid search fields.
+--------------------------------------------------------+
| Plan Search Parameters |
+--------------------------------------------------------+
| Key | Valid Values |
| author | A bugzilla login (email address) |
| author_type | (select from email_variants) |
| plan_id | comma separated integers |
| plan_text | String |
| plan_text_type | (select from query_variants) |
| plan_type | String: Product Name |
| product | String: Product Name |
| product_id | Integer |
| 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 plans are retuned in a list of hashes.
lookup_type_id_by_name
Params: $name - String: the status name.
Returns: Integer: ID of the plan type.
lookup_type_name_by_id
Params: $id - Integer: ID of the plan stype to return
Returns: String: the type name.
remove_tag($plan_id, $tag)
Description: Remove a tag from a plan.
Params: $plan_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.
store_text($plan_id, $text, [$author_id])
Description: Update the document field of a plan.
Params: $plan_id - Integer: An integer representing the ID in the database.
$text - String: Text for the document. Can contain HTML.
[$author_id] = Integer/String: (OPTIONAL) The numeric ID or the login of the author.
Defaults to logged in user.
Returns: Array: Empty on success.
update($ids, $values)
Description: Updates the fields of the selected test plan.
Params: $ids - Integer: A single TestPlan ID.
$values - Hash of keys matching TestPlan fields and the new values
to set each field to.
+-------------------------+----------------+
| Field | Type |
+-------------------------+----------------+
| name | String |
| type | Integer/String |
| default_product_version | String |
| isactive | Boolean |
+-------------------------+----------------+
Returns: Hash: The updated test plan object.
the Bugzilla::Testopia::TestPlan manpage the Bugzilla::Webservice manpage
Greg Hendricks <ghendricks@novell.com>