Page 1 sur 3

Passage de paramètres à partir de SquashTM aux scripts SquashTA

Publié : ven. janv. 09, 2015 11:11 am
par gaelor
Bonjour,

Est il possible à l'heure actuelle de définir dans squashtm des paramètres et de les réutiliser ds les scripts squashTA ?

Si impossible, pouvons nous définir des paramètres ds un .properties, puis les appeler ds notre script TA?

Exemple avec le plugin ssh, afin de variabiliser les scenarios jmx à envoyer à jmeter:

-Ta script:
SETUP :
LOAD shell/injection_sql.txt AS injection.sql
CONVERT injection.sql TO query.shell USING $(timeout:60000) AS commandLine1
TEST :
EXECUTE execute WITH commandLine1 ON ssh_squashta AS result1
ASSERT result1 IS success

-Commande shell:
/bin/sh /opt/squashta/apache-jmeter/bin/jmeter.sh -n -t ${Jmeter_JMX};

-Un properties du type ?:
Jmeter_JMX=Charge_JDBC.jmx

Merci d'avance

Passage de paramètres à partir de SquashTM aux scripts SquashTA

Publié : ven. janv. 09, 2015 2:29 pm
par gaelor
Rappel j'utilise squash-ta-maven-plugin:1.8.0-RELEASE.

J'ai suivi ce tuto (partie Link TM-TA : variable transmission between Squash-TM and Squash-TA):
https://sites.google.com/a/henix.fr/wik ... definition

1)Création du champ personnalisé comme dans l'exemple, résultat obtenu correct:
# more /opt/squashta/squashta-server-1.7.0/execution_home/jobs/jmeter_squashta/builds/2015-01-09_14-19-09/fileParameters/testsuite.json
{"test":[{"param":{"TC_REFERENCE":"","TC_CUF_property1":"value1"},"id":"1353","script":"jmeter_sql.ta"}]}

2)Création du dataset et ajout ds le script ta, mais jenkins ne résout pas l'assertion:

[ERROR] org.squashtest.ta.backbone.engine.impl.TestRunnerImpl - The execution failed in the SETUP phase of the TA script 'jmeter_sql.ta' with the message: 'The pattern 'value1="success"' was not found in the file.'.

En pièce jointe les fichiers

Passage de paramètres à partir de SquashTM aux scripts SquashTA

Publié : lun. janv. 12, 2015 4:56 pm
par bfranchet
Bonjour,

Oui il est possible de passer des paramètres de TM à TA

Malheureusement, je ne voix pas les attachements dont vous parler dans votre post.
Cependant je viens de regarder la doc et je pense qu'il y a une erreur. (J'ai pas d'instance sous la main pour tester)

Essayer de mettre ${TC_CUF_property1} à la place de ${property1} dans le fichier de ressource TA (le xmsDataset.xml dans l'exemple).

Je vérifierai également de mon côté et modifierai la doc en conséquence

Cordialement

Passage de paramètres à partir de SquashTM aux scripts SquashTA

Publié : lun. janv. 12, 2015 6:40 pm
par bfranchet
Je confirme il y a une erreur dans la doc. C'est maintenant corrigé, et j'ai fait tourner l'exemple sur une de mes instances de test

Cordialement

Passage de paramètres à partir de SquashTM aux scripts SquashTA

Publié : mar. janv. 13, 2015 11:53 am
par gaelor
Merci pr votre retour rapide et la qualité/simplicité de votre produit.

Passage de paramètres à partir de SquashTM aux scripts SquashTA

Publié : ven. janv. 16, 2015 3:25 pm
par gaelor
Bonjour,

Dans votre exemple vous dites, que le dataset remplace la valeur de ${TC_CUF_}.

Comment je peux réutiliser la valeur du ${TC_CUF_} dans une resource shell/dataset/... et sur jenkins ?

J'ai essayé ds une ressource shell(sans réussite):
SETUP :
LOAD shell/test.txt AS test
CONVERT test TO query.shell USING $(timeout:60000) AS commandLine1
TEST :
EXECUTE execute WITH commandLine1 ON ssh_squashta AS result1
ASSERT result1 IS success

-----

echo $TC_CUF_property1 > ~/tmp.txt;
echo ${TC_CUF_property1} > ~/tmp.txt;

-----

idem avec une verification ds le script ta:

SETUP :
LOAD shell/test.txt AS test
CONVERT test TO query.shell USING $(timeout:60000) AS commandLine1
TEST :
EXECUTE execute WITH commandLine1 ON ssh_squashta AS result1
VERIFY result1 DOES contain WITH $(TC_CUF_property1="value1")

Passage de paramètres à partir de SquashTM aux scripts SquashTA

Publié : ven. janv. 16, 2015 3:57 pm
par bfranchet
Bonjour

Essayer avec la modification ci-dessous :

SETUP :
LOAD shell/test.txt AS test
[b]CONVERT test TO file(param) USING context_script_params AS processedTest[/b]
CONVERT [b]processedTest[/b] TO query.shell USING $(timeout:60000) AS commandLine1
TEST :
EXECUTE execute WITH commandLine1 ON ssh_squashta AS result1
ASSERT result1 IS success

C'est la ligne en gras que j'ai ajouté qui fait le travail de "remplacement". Je vous invite également à lire la doc de ce lien : https://sites.google.com/a/henix.fr/wik ... parameters. Cette doc explique en détail le fonctionnement des paramètres de context qui est la fonctionnalité utilisé pour le passage de paramètre via le lien TM-TA

Cordialement

Passage de paramètres à partir de SquashTM aux scripts SquashTA

Publié : lun. févr. 02, 2015 5:50 pm
par gaelor
Merci celà fonctionne,

Est il possible d'utiliser la même manipulation pr exploiter la variable ds une assertion ?

SETUP:
LOAD shell/assert1.txt AS pacemaker.assert1
CONVERT pacemaker.assert1 TO file(param) USING context_script_params AS processedTest1
CONVERT pacemaker.resource.maintenance TO file(param) USING context_script_params AS processedTest
CONVERT processedTest TO query.shell USING $(timeout:150000) AS commandLine1
LOAD shell/pacemaker_resource_unmaintenance.txt AS pacemaker.resource.unmaintenance
TEST :
EXECUTE execute WITH commandLine1 ON ssh_selinux AS result1
ASSERT result1 DOES contain WITH $([color=#ff0000]ASSERT1[/color]) USING $(out)

assert1.txt:
[color=#ff0000]ASSERT1=${TC_CUF_ASSERT1}
[/color]

Ne fonctionne pas.

Merci d'avance

Passage de paramètres à partir de SquashTM aux scripts SquashTA

Publié : lun. févr. 02, 2015 9:50 pm
par bfranchet
Bonjour,

Essayez avec les modifications suivantes :

SETUP:
LOAD shell/assert1.txt AS pacemaker.assert1
CONVERT pacemaker.assert1 TO file(param) USING context_script_params AS processedTest1
CONVERT pacemaker.resource.maintenance TO file(param) USING context_script_params AS processedTest
CONVERT processedTest TO query.shell USING $(timeout:150000) AS commandLine1
LOAD shell/pacemaker_resource_unmaintenance.txt AS pacemaker.resource.unmaintenance
TEST :
EXECUTE execute WITH commandLine1 ON ssh_selinux AS result1
ASSERT result1 DOES contain WITH [color=#44bb00]processedTest1[/color] USING $(out)

assert1.txt:
[color=#44bb00]${TC_CUF_ASSERT1}[/color]

Passage de paramètres à partir de SquashTM aux scripts SquashTA

Publié : mar. févr. 03, 2015 12:22 pm
par gaelor
Merci celà fonctionne, par contre il y a un petit soucis lors de l'assertion.

processedTest1 retourne "ASSERT1=value", alors que j'aurais voulu matcher seulement avec "value".

Il y a t'il une manière de retirer le nom du paramètre ?


Autre question (j'ai essayé d'ouvrir deux cases ds le forum sans succès), est il possible d'augmenter la limite du nbres de caractères ds les champs personnalisés ?

Merci d'avance