Pourquoi utiliser un outil d'analyse de code

Rédigé par Dominique Mereaux le 01 avril 2013


Diminution des coûts :



L’utilisation des outils d’analyse de code permet de faire de la prévention, c’est à dire trouver des défauts avant d’exécuter le code lors de tests unitaires, intégration ou système.


Exemple:

  1. Lancement de l’outil sur un code java :


  2. Résultat de l’analyse :

  3. Détail du défaut :



Le test est effectivement toujours à vrai. Manque-t-il un appel une méthode pour calculer deltaV? Cette condition est-elle finalement inutile ?

Détecter un défaut à ce niveau permet une correction immédiate et limite de fait les coûts de test :




Le volume d’anomalies impacte le nombre de phases de tests nécessaire à l’obtention d’un niveau de qualité, et donc le coût (et les délais).
Le nombre de phases minimum est de trois, mais peu être plus élevé si la volumétrie d'anomalie est importante.
On pourrait mesurer l'efficacité de ces outils en calculant le nombre de défauts détectés répartis par gravité.


Maintenabilité, maturité :

  1. Autre exemple : utilisation d’un résultat boolean d’une méthode de façon « inversée »


  2. Visualisation du code :


  3. Recherche de l’utilisation de la méthode :


  4. Effectivement la négation est utilisée :


  5. L’outil d’analyse propose même une correction automatique :




Ici je peux remplacer estValide par estNonValide, l’outil fera automatiquement les corrections y compris dans la fonction appelante.

En simplifiant le code (suppression des négations) je rend le code plus maintenable est évite les erreurs de codage liées à l’utilisation des négations.

Par une lisibilité plus importante, le coût de la maintenance pourra être diminuée.
Remarque, en offrant ces fonctions de corrections automatiques, la production de code devient plus efficace.

Les exemples ont été réalisés avec Intelliji IDEA.

Classé dans : Outil de test - Mots clés : analyse statique - aucun commentaire

Installation de pour les versions à partir de 1.9.4

Rédigé par Dominique Mereaux le 23 février 2013

Suite à des modifications pour des raisons de sécurité la procédure d'installation de testlink a changé.


Il vous faudra modifier le fichier config.inc.php qui se trouve sous le répertoire cfg.


Les variables $tlCfg->log_path et $g_repositoryPath pointent sur des répertoires fictifs donnés en exemples. Il faut modifier ces chemins pour pouvoir pointer sur des répertoire existants sur votre machine et protégés de l'extérieur.


Si ces variables ne sont pas correctement valorisées pour ne pourrez pas faire l'installation et vous obtiendrez un message d'erreur.





Les versions 1.9.4 et 1.9.5 offre une meilleure intégration avec les outils de reporting d'anomalie.


Pour plus d'informations allez sur le forum:

Classé dans : Outil de test - Mots clés : testlink - 1 commentaire

Testlink: connexion à un gestionnaire d'anomalie

Rédigé par Dominique Mereaux le 02 février 2013


Depuis la version 1.9.4 la configuration à un gestionnaire d'anomalie s'est considérablement simplifiée. Plus besoin de manipuler les fichiers de configuration.



Désormais il suffit d'aller dans le menu Issue Tracker Management. Vous pouvez créer autant de connections que vous voulez et choisir par projet à quel gestionnaire d'anomalie vous voulez utiliser.



Une fois créée, vous pouvez configurer cette connexion :

1/ le type: par exemple mantis(interface:db)

2/ les données d'accès

<issuetracker>
<dbhost>localhost</dbhost>
<dbname>bugtracker</dbname>
<dbtype>mysql</dbtype>
<dbuser>utilisateur</dbuser>
<dbpassword>mot de passe</dbpassword>
<uriview>http://localhost:8088/development/mantis/view.php?id=</uriview>
<uricreate>http://localhost:8088/development/mantis/</uricreate>
</issuetracker>


Pour vous aider un template est fourni : Show configuration example.

Classé dans : Outil de test - Mots clés : testlink - aucun commentaire

Exemple de test selenium avec une popup

Rédigé par Dominique Mereaux le 26 mai 2012

Il est possible de se créer un compte viadeo via google mail. Une popup s'ouvre alors. Nous allons faire un enregistrement de cette procédure et voir pourquoi on ne peut l'utiliser tel quel.




Si on sélectionne google la popup suivante apparait :



Après enregistrement de cette procédure on obtient :





Si je rejoue le test tel quel il ne fonctionnera pas. En effet dans les commandes waitForPopUp et selectWindow l'identifiant est variable (généré automatiquement) et donc aucune chance pour que selenium trouve l'élément suivant.


Que faire?


Si on regarde en détail la commande waitForPopUp qui permet de se synchroniser sur l'apparition du popup on apprend qu'à la place de l'identifiant javascript de la fenêtre on peut utiliser null et dans ce cas c'est le premier popup qui est pris en compte


Pour la deuxième commande selectWindow qui permet de rendre la fenêtre active pour selenium, on apprend que l'on peut également sélectionner la fenêtre en utilisant le nom de la fenêtre ici "Comptes Google" .


Finalement le code devient:

Il n'est pas toujours possible de réutiliser tel quel un code enregistré.

Classé dans : Automatisation - Mots clés : selenium - aucun commentaire

Faire le lien entre testlink et mantis

Rédigé par Dominique Mereaux le 27 avril 2012

Il est possible de faire le lien entre Testlink et Mantis. Vous pourrez ainsi enrichir vos rapports de test.


Côté Mantis : Modifier le fichier config_inc.php :
Création d’un compte anonyme

# --- anonymous login -----------
# Allow anonymous login
$g_allow_anonymous_login = ON;
$g_anonymous_account = 'dummy';
Remplacer dummy par un compte que vous aurez créé avec accès en lecture à tous les projets.

Ce compte permettra de se connecter comme invité à Mantis et limite ainsi les accès.
Configurer l’interface Mantis côté testlink :

Wamp → repertoire htdocs/Testlink/cfg : Modifier le fichier mantis.cfg.php:
/** The DB host to use when connecting to the mantis db */
define('BUG_TRACK_DB_HOST', 'localhost');
/** The name of the database that contains the mantis tables */
define('BUG_TRACK_DB_NAME', 'bugtracker');
/** The DB type being used by mantis */
define('BUG_TRACK_DB_USER', root');
/** The DB password to use for connecting to the mantis db */
define('BUG_TRACK_DB_PASS', 'root');
/** link to the bugtracking system, for viewing bugs */
define('BUG_TRACK_HREF', "http://localhost:8888/mantis/view.php?id=");
/** link to the bugtracking system, for entering new bugs */
define('BUG_TRACK_ENTER_BUG_HREF',"http://localhost:8888/mantis/");

Intégrer Mantis

Copier les lignes suivantes de config.inc.php vers custom_config.inc.php :
$g_interface_bugs = 'NO';
→ $g_interface_bugs = 'MANTIS';

Exécution d’un test :



→ Sous Mantis créer une anomalie et utiliser l’identifiant de l’anomalie pour faire le lien :



Le lien est ajouté :


Si vous cliquez sur l'anomalie vous êtes automatiquement redirigé vers Mantis.

Classé dans : Outil de test - Mots clés : aucun - 4 commentaires

«précédentepage 3 sur 9suivante»

Catégories

Archives

Mots clés

Derniers articles

Derniers commentaires