Interface createLibraries

L'interface createLibraries permet de créer des bibliothèques. La réponse HTTP de l'appel comprend la structure XML des bibliothèques modifiées. Les identifiants des nouveaux nœuds sont disponibles dans la structure de la bibliothèque XML mise à jour.

Le tableau ci-dessous présente les paramètres de l'interface createLibraries.

URL de l'interface Paramètre Descriptions

http://<front-end URL>/servicesExchange?hid=createLibraries

sid Jeton de service Web ou identificateur de session pour l'authentification des utilisateurs. Vous pouvez générer le jeton de service Web dans la Page Paramètres de l'interface utilisateur de Silk Central. Pour accéder à cette page, passez le curseur de la souris sur le nom d'utilisateur dans le menu Silk Central et sélectionnez Paramètres utilisateur. Vous pouvez appeler la méthode logonUser de l'un des services Web disponibles pour récupérer l'identificateur de session.

Exemple : http://<front-end URL>/servicesExchange?hid=createLibraries&sid=<webServiceToken>

Le fichier de définition du schéma XML qui sert à valider les bibliothèques peut être téléchargé au moyen de l’URL du serveur de présentation, http://<URL serveur de présentation>/silkroot/xsl/libraries.xsd, ou copié à partir du dossier d'installation du serveur de présentation, <dossier d'installation Silk Central>/wwwroot/silkroot/xsl/libraries.xsd.

Exemple de service Web createLibraries

Le code suivant utilise Apache HttpClient pour créer des bibliothèques.

import org.apache.commons.httpclient.*; // Apache HttpClient

String webServiceToken = "e39a0b5b-45db-42db-84b2-b85028d954d5";

URL service = new URL("http", mWebServiceHelper.getHost(),
  mWebServiceHelper.getPort(), String.format("/servicesExchange?hid=%s&sid=%s",
  "createLibraries", webServiceToken));
	
HttpClient client = new HttpClient();
PostMethod filePost = new PostMethod(service.toExternalForm());
String xmlFile = loadTestPlanUtf8("libraries.xml");
StringPart xmlFileItem = new StringPart("libraries", xmlFile, "UTF-8");
xmlFileItem.setContentType("text/xml");
Part[] parts = {xmlFileItem};

filePost.setRequestEntity(new MultipartRequestEntity(parts, filePost.getParams()));
client.getHttpConnectionManager().getParams().setConnectionTimeout(60000);
int status = client.executeMethod(filePost);
System.out.println(filePost.getStatusLine());

Pour télécharger Apache HttpComponents, visitez le site http://hc.apache.org/downloads.cgi. Reportez-vous à la documentation du composant pour connaître les bibliothèques requises.

Exemple de bibliothèques

Le code suivant affiche un exemple de bibliothèque pouvant être téléchargé dans Silk Central à l'aide du service createLibraries. L'utilisation d'une nouvelle bibliothèque n'est pas limitée à certains projets, à moins qu'un ou plusieurs projets soient définis dans la section GrantedProjects.

<?xml version="1.0" encoding="UTF-8"?>
<LibraryStructure xmlns="http://www.borland.com/TestPlanSchema"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://<front-end URL>/silkroot/xsl/libraries.xsd">

  <Library name="Library 1">
    <Folder name="Folder 1">
      <Folder name="Folder 1.1">
        <SharedSteps name="Basic create user steps">
          <Step name="Login">
            <ActionDescription>
              Login with user admin.
            </ActionDescription>
            <ExpectedResult>Succesful login.</ExpectedResult>
            <CustomStepProperty name="Step Property 1">
                        <propertyValue>Step Property Value</propertyValue>
            </CustomStepProperty>
          </Step>
          <Step name="Create User">
            <ActionDescription>Create user tester</ActionDescription>
            <ExpectedResult>User created</ExpectedResult>
            <CustomStepProperty name="Step Property 1">
                        <propertyValue>Step Property Value</propertyValue>
            </CustomStepProperty>
          </Step>
          <Step name="Logout">
            <ActionDescription>
              Logout using start menu
            </ActionDescription>
            <ExpectedResult>Logged out.</ExpectedResult>
            <CustomStepProperty name="Step Property 1">
                        <propertyValue>Step Property Value</propertyValue>
            </CustomStepProperty>
          </Step>
        </SharedSteps>
      </Folder>
    </Folder>
    <GrantedProjects>
      <ProjectId>0</ProjectId>
      <ProjectId>1</ProjectId>
    </GrantedProjects>
  </Library>
</LibraryStructure>