Metadata-Version: 2.1
Name: TestlinkApiClient
Version: 0.1.6
Summary: TestLink API XML-RPC Client
Home-page: https://github.com/seoktaehyeon/testlink-api-client
Author: Will
Author-email: v.stone@163.com
Maintainer: Will
Maintainer-email: v.stone@163.com
License: MIT
Platform: linux
Description-Content-Type: text/markdown

# testlink-api-client
[![org](https://img.shields.io/badge/org-truth%20%26%20insurance%20workshop-informational)](http://bx.baoxian-sz.com)
![author](https://img.shields.io/badge/author-v.stone@163.com-informational)
![github](https://img.shields.io/github/license/seoktaehyeon/testlink-api-client)
[![pypi](https://img.shields.io/pypi/v/TestlinkApiClient.svg)](https://pypi.org/project/TestlinkApiClient/)
[![ref](https://img.shields.io/badge/ref-testlink%20api%20xmlrpc-informational)](https://github.com/TestLinkOpenSourceTRMS/testlink-code/blob/testlink_1_9/lib/api/xmlrpc/v1/xmlrpc.class.php)

## XML-RPC Client For TestLink

#### Installation
```bash
#!/bin/bash
pip install TestlinkApiCLient
```
#### Example
```python
#!/usr/bin/env python
from TestlinkApiClient.xmlrpc import TestlinkClient

# Connect Testlink
testlink = TestlinkClient(url='Testlink Access Url', user='Testlink Username', dev_key='Personal Api Key')

# List Project
testlink.list_project()
```

#### Function List
- Project Operations
```python
testlink.list_project()
testlink.create_project(project_name='Project Name')
testlink.create_project(project_name='Project Name', prefix='Prefix')
testlink.delete_project(project_name='Project Name')
```
- Plan Operations
```python
testlink.list_plan(project_name='Project Name')
```
- Suite Operations
```python
testlink.list_suite(project_name='Project Name')
testlink.list_suite(project_name='Project Name', suite_name='Suite Name')
testlink.get_suite(project_name='Project Name', suite_name='Suite Name')
testlink.create_suite(project_name='Project Name', suite_name='Suite Name')
testlink.create_suite(project_name='Project Name', suite_name='Suite Name', parent_suite_name='Parent Suite Name')
```
- Case Operations
```python
testlink.get_case(project_name='Project Name', case_ext_id='Test Case External ID')
testlink.create_case(project_name='Project Name', suite_name='Suite Name', case_name='Test Case Title') 
testlink.create_case(project_name='Project Name', suite_name='Suite Name', case_name='Test Case Title', summary='Test Case Summary', steps='Test Case Steps')
testlink.update_step(case_ext_id='Test Case External ID', steps='Test Case Steps')
testlink.set_execution_result(project_name='Project Name', plan_name='Plan Name', build_name='Build Name', 
                              case_ext_id='Test Case External ID', case_exe_result='Execition Result')
testlink.set_execution_result(project_name='Project Name', plan_name='Plan Name', build_name='Build Name', 
                              case_ext_id='Test Case External ID', case_exe_result='Execution Result', 
                              notes='Execution Log or Notes')
testlink.get_last_execution_result(project_name='Project Name', plan_name='Plan Name', case_ext_id='Test Case External ID')
```

#### Parameters Description
- Test Case Steps
> Steps is a list, every step format could find from testlink.step_template
- Execution Result
> PASS: p, pass, passed <br>
> FAIL: f, fail, failed <br>
> BLOCK: b, block, blocked


## Rest Client For TestLink
In The Future


