Skip to content

Commit c8eb322

Browse files
author
Luiko Czub
committed
prepare release v0.4.7
1 parent bf17d42 commit c8eb322

File tree

8 files changed

+79
-206
lines changed

8 files changed

+79
-206
lines changed

Diff for: CHANGES.rst

+23-5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
Changes in TestLink-API-Python-client Source Distribution
22
=========================================================
33

4-
TestLink-API-Python-client UNDER DEVELOP v0.4.7
5-
-----------------------------------------------
4+
TestLink-API-Python-client release notes v0.4.7 (Jan. 2014)
5+
-----------------------------------------------------------
66

77
new service methods - copy test cases #17
88
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -17,22 +17,34 @@ Example::
1717

1818
>>> import testlink
1919
>>> tls = testlink.TestLinkHelper().connect(testlink.TestlinkAPIClient)
20-
>>> tc_info = tls.getTestCase(None, testcaseexternalid='NPROAPI3-2')
21-
[{'full_tc_external_id': 'NPROAPI3-2', ..., 'id': '5440', 'version': '2',
22-
'testsuite_id': '5415', 'tc_external_id': '2','testcase_id': '5425', ...}]
20+
>>> tc_info = tls.getTestCase(None, testcaseexternalid='NPROAPI-3')
21+
[{'full_tc_external_id': 'NPROAPI-3', ..., 'id': '5440', 'version': '2',
22+
'testsuite_id': '5415', 'tc_external_id': '3','testcase_id': '5425', ...}]
2323
>>> tls.copyTCnewTestCase(tc_info[0]['testcase_id'], testsuiteid=newSuiteID,
2424
testcasename='a new test case name')
2525
2626
Known limitations:
27+
2728
- estimatedexecduration settings are not copied
2829

2930
implement missing 1.9.8 api methods - TestCase #11
3031
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32+
new TestlinkAPIGeneric and TestlinkAPIClient api methods to modify test cases
33+
3134
- addTestCaseToTestPlan, updateTestCase
3235
- createTestCaseSteps, deleteTestCaseSteps
3336

37+
Known TL 1.9.9 limitations:
38+
39+
- 6109 createTestCaseSteps with action 'update' does not change existing steps
40+
- 6108 createTestCaseSteps creates steps without test case references
41+
- 6102 updateTestCase returns debug informations
42+
- 6101 updateTestCase does not set modification timestamp
43+
3444
implement missing 1.9.8 api methods - Attachments #13
3545
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
46+
new TestlinkAPIGeneric and TestlinkAPIClient api methods to upload attachments
47+
3648
- uploadRequirementSpecificationAttachment, uploadRequirementAttachment
3749
- uploadTestProjectAttachment, uplodTestSuiteAttachment
3850
- uploadTestCaseAttachment
@@ -46,9 +58,15 @@ TestLink-API-Python-client is now installable via PyPI #15
4658

4759
new api methods for Platforms implemented #10
4860
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
61+
new TestlinkAPIGeneric and TestlinkAPIClient api methods to handle platforms
62+
4963
- createPlatform, getProjectPlatforms
5064
- addPlatformToTestPlan, removePlatformFromTestPlan
5165

66+
Known TL 1.9.9 limitations:
67+
68+
- 6076 addPlatformToTestPlan creates invalid platform links
69+
5270
TestLink-API-Python-client release notes v0.4.5 (Nov. 2013)
5371
-----------------------------------------------------------
5472

Diff for: README.rst

+5-8
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,14 @@ TestLink-API-Python-client delivers two main classes
1919
- TestlinkAPIGeneric - Implements the TestLink API methods as generic PY methods
2020
with error handling
2121
- TestlinkAPIClient - Inherits from TestlinkAPIGeneric and defines service
22-
methods like "countProjects".
22+
methods like "copyTCnewVersion".
2323

2424
and the helper class
2525

2626
- TestLinkHelper - search connection parameter from environment variables and
2727
command line arguments
2828

29-
How to talk with TestLink in a python shell: ::
29+
How to talk with TestLink in a python shell and copy a test case: ::
3030

3131
set TESTLINK_API_PYTHON_SERVER_URL=http://[YOURSERVER]/testlink/lib/api/xmlrpc/v1/xmlrpc.php
3232
set TESTLINK_API_PYTHON_DEVKEY=[Users devKey generated by TestLink]
@@ -36,14 +36,11 @@ How to talk with TestLink in a python shell: ::
3636
>>> tls = testlink.TestLinkHelper().connect(testlink.TestlinkAPIClient)
3737
>>> tls.countProjects()
3838
3
39-
40-
>>> tc_info = tls.getTestCase(None, testcaseexternalid='NPROAPI3-2')
41-
[{'full_tc_external_id': 'NPROAPI3-2', ..., 'id': '5440', 'version': '2',
42-
'testsuite_id': '5415', 'tc_external_id': '2','testcase_id': '5425', ...}]
43-
39+
>>> tc_info = tls.getTestCase(None, testcaseexternalid='NPROAPI-3')
40+
[{'full_tc_external_id': 'NPROAPI-3', ..., 'id': '5440', 'version': '2',
41+
'testsuite_id': '5415', 'tc_external_id': '3','testcase_id': '5425', ...}]
4442
>>> tls.copyTCnewTestCase(tc_info[0]['testcase_id'], testsuiteid=newSuiteID,
4543
testcasename='a new test case name')
46-
4744
>>> print tls.whatArgs('createTestPlan')
4845
createTestPlan(<testplanname>, <testprojectname>, [note=<note>], [active=<active>],
4946
[public=<public>], [devKey=<devKey>])

Diff for: doc/install.rst

+2-2
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@ Create the user specific devKey inside TestLink, see
2323
Installing from PyPI
2424
--------------------
2525

26-
TestLink-API-Python-client will be available in the Python Package Index (PyPI_)
27-
with Release v0.4.6. It is recommended that you use `pip`_ to install.
26+
TestLink-API-Python-client is available in the Python Package Index (PyPI_)
27+
since Release v0.4.6. It is recommended that you use `pip`_ to install.
2828

2929
Install from PyPI using pip by running::
3030

Diff for: doc/usage.rst

+35-2
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,8 @@ Ask the TestLink API Client, what arguments a API method expects: ::
2323
tlh = testlink.TestLinkHelper()
2424
tls = tlh.connect(testlink.TestlinkAPIClient)
2525
print tls.whatArgs('createTestPlan')
26-
> createTestPlan(<testplanname>, <testprojectname>, [note=<note>], [active=<active>], [public=<public>], [devKey=<devKey>])
26+
> createTestPlan(<testplanname>, <testprojectname>, [note=<note>], [active=<active>],
27+
[public=<public>], [devKey=<devKey>])
2728
> create a test plan
2829

2930
or generate a description of all implemented API method: ::
@@ -34,8 +35,40 @@ or generate a description of all implemented API method: ::
3435
for m in testlink.testlinkargs._apiMethodsArgs.keys():
3536
print tls.whatArgs(m), '\n'
3637

38+
Copy test cases
39+
---------------
3740

38-
Run Examples
41+
Copy an existing test case into another test suite with changed name::
42+
43+
>>> import testlink
44+
>>> tls = testlink.TestLinkHelper().connect(testlink.TestlinkAPIClient)
45+
>>> tc_info = tls.getTestCase(None, testcaseexternalid='NPROAPI-3')
46+
[{'full_tc_external_id': 'NPROAPI-3', ..., 'id': '5440', 'version': '2',
47+
'testsuite_id': '5415', 'tc_external_id': '3','testcase_id': '5425', ...}]
48+
>>> tls.copyTCnewTestCase(tc_info[0]['testcase_id'], testsuiteid=newSuiteID,
49+
testcasename='a new test case name')
50+
51+
Create a new test case version with changed summary and importance::
52+
53+
>>> import testlink
54+
>>> tls = testlink.TestLinkHelper().connect(testlink.TestlinkAPIClient)
55+
>>> tc_info = tls.getTestCase(None, testcaseexternalid='NPROAPI-3')
56+
[{'full_tc_external_id': 'NPROAPI-3', ..., 'id': '5440', 'version': '2',
57+
'testsuite_id': '5415', 'tc_external_id': '3','testcase_id': '5425', ...}]
58+
>>> tls.copyTCnewVersion(tc_info[0]['testcase_id'], summary='new summary',
59+
importance='1')
60+
61+
Default is, that the last version of a test case is used for the copy.
62+
If a different version should be used, specify the required version as second
63+
argument. Examples::
64+
65+
>>> tls.copyTCnewTestCase(tc_info[0]['testcase_id'], 1, testsuiteid=newSuiteID,
66+
testcasename='a new test case name')
67+
>>> tls.copyTCnewVersion(tc_info[0]['testcase_id'], 1, summary='new summary',
68+
importance='1')
69+
70+
71+
Run examples
3972
------------
4073

4174
Running example, how to use the class TestlinkAPIClient, with connection

Diff for: setup.py

+9-5
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,14 @@
3131
- TestlinkAPIGeneric - Implements the TestLink API methods as generic PY methods
3232
with error handling
3333
- TestlinkAPIClient - Inherits from TestlinkAPIGeneric and defines service
34-
methods like "countProjects".
34+
methods like "copyTCnewVersion".
3535
3636
and the helper class
3737
3838
- TestLinkHelper - search connection parameter from environment variables and
3939
command line arguments
4040
41-
How to talk with TestLink in a python shell: ::
41+
How to talk with TestLink in a python shell and copy a test case: ::
4242
4343
set TESTLINK_API_PYTHON_SERVER_URL=http://[YOURSERVER]/testlink/lib/api/xmlrpc/v1/xmlrpc.php
4444
set TESTLINK_API_PYTHON_DEVKEY=[Users devKey generated by TestLink]
@@ -47,10 +47,14 @@
4747
>>> tls = testlink.TestLinkHelper().connect(testlink.TestlinkAPIClient)
4848
>>> tls.countProjects()
4949
3
50-
>>> tls.getTestCase(None, testcaseexternalid='NPROAPI3-1')
51-
[{'full_tc_external_id': 'NPROAPI3-1', 'node_order': '0', 'is_open': '1', 'id': '2757', ...}]
50+
>>> tc_info = tls.getTestCase(None, testcaseexternalid='NPROAPI-3')
51+
[{'full_tc_external_id': 'NPROAPI-3', ..., 'id': '5440', 'version': '2',
52+
'testsuite_id': '5415', 'tc_external_id': '3','testcase_id': '5425', ...}]
53+
>>> tls.copyTCnewTestCase(tc_info[0]['testcase_id'], testsuiteid=newSuiteID,
54+
testcasename='a new test case name')
5255
>>> print tls.whatArgs('createTestPlan')
53-
createTestPlan(<testplanname>, <testprojectname>, [note=<note>], [active=<active>], [public=<public>], [devKey=<devKey>])
56+
createTestPlan(<testplanname>, <testprojectname>, [note=<note>], [active=<active>],
57+
[public=<public>], [devKey=<devKey>])
5458
create a test plan
5559
5660
More information about this library can be found on the Wiki_

Diff for: src/testlink/testlinkapi.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#! /usr/bin/python
22
# -*- coding: UTF-8 -*-
33

4-
# Copyright 2011-2013 Olivier Renault, James Stock, TestLink-API-Python-client developers
4+
# Copyright 2011-2013 Luiko Czub, Olivier Renault, James Stock, TestLink-API-Python-client developers
55
#
66
# Licensed under the Apache License, Version 2.0 (the "License");
77
# you may not use this file except in compliance with the License.
@@ -41,7 +41,7 @@ class TestlinkAPIClient(TestlinkAPIGeneric):
4141
"""
4242

4343
__slots__ = ['stepsList']
44-
__author__ = 'Olivier Renault, James Stock, TestLink-API-Python-client developers'
44+
__author__ = 'Luiko Czub, Olivier Renault, James Stock, TestLink-API-Python-client developers'
4545

4646
def __init__(self, server_url, devKey):
4747
""" call super for init generell slots, init sepcial slots for teststeps

0 commit comments

Comments
 (0)