testlink-api-client-patched
v0.2.5
Published
TestLink API client brings you a pure javascript node-module for TestLink management tool integration
Downloads
12
Readme
TestLink API Client
TestLink API Client brings you a pure JavaScript Node-Module for TestLink tool By default TestLink people are providing XML-RPC.api which can be used to get the response from TestLink. This can be integrated with any JavaScript automation tools like Selenium-webdriver.js or webdriver.js for executing automation testCases and update the Results in TestLink. It can also be integrated with BDD frameworks like Cucumber.js and Yadda.js.
Installation
Node based environments
npm install testlink-api-client
Examples:
var TestLinkAPI = require('testlink-api-client'),
devKey="5f5fa0d9eba136f28e45d1f8a17cbedd",
RPCUrl="http://localhost:80/testlink/lib/api/xmlrpc/v1/xmlrpc.php",
testlink=new TestLinkAPI(devKey,RPCUrl),
testProjectId=12,
testsuiteid=13;
testlink.getProjects(function(projects){
console.log(projects);
});
testlink.getTestCasesForTestSuite({testProjectId:testProjectId,testsuiteid:testsuiteid}, function(result){ result.map(function(testcases){
console.log(testcases);
});
});
Go through the Below URL for details....
http://chaitanyaqa.github.io/testlink-api-client/classes/TestLinkApi.html#methods
Modification
Ajout de la méthode, getProjectTestCases
. Celle-ci ne fonctionne qu'avec une version patché de testlink.
Dans le répertoire suivant: /lib/functions
, ouvrez le fichier testproject.class.php
et ajoutez y return $tcIDs
à la fin de la fonction get_all_testcases_id
.
Ensuite dans le répertoire suivant: /lib/api/xmlrpc/v1
, ouvrez le fichier xmlrpc.class.php
et ajoutez y:
<?php
/**
* Gets a list of test case id's within a project
*
* @param struct $args
* @param string $args["devKey"]
* @param int $args["testprojectid"]
* @return mixed $resultInfo
*
* @access public
*/
public function getProjectTestCases($args){
$messagePrefix="(" .__FUNCTION__ . ") - ";
$this->_setArgs($args);
$checkFunctions = array('authenticate','checkTestProjectID');
$status_ok=$this->_runChecks($checkFunctions,$messagePrefix);
if($status_ok)
{
$testProjectID = $this->args[self::$testProjectIDParamName];
$info=$this->tprojectMgr->get_all_testcases_id($testProjectID);
if( !is_null($info) && count($info) > 0 )
{
$info = array_values($info);
}
return $info;
}
else
{
return $this->errors;
}
}
et pour finir modifier la méthode initMethodYellowPages
, et ajoutez y 'tl.getProjectTestCases' => 'this:getProjectTestCases'
.