2016-10-12 1 views
0

I ont des tests d'automatisation basées sur RobotFramework avec SikuliLibrary, qui sont pour l'image Comparer. J'utilise Jenkins pour exécuter les tests sur le serveur externe (VM). Si j'ouvre le script VM - image compare fonctionne. La capture d'écran est créée.Exécuter les tests RobotFramework avec Sikuli Library avec Jenkins sur VM (RDC)

Si je ferme la session VM et exécuter le test, il y a problème. Voici le journal du mot-clé « Get Score Match »:

INFO Could not find C:\Images\image.png INFO ${scoreFromImage} = 0.0

Est ressemble, lorsque la session VM n'est pas actif (ouvert), « Get Score Match » ne peut pas prendre un instantané à partir du navigateur pour comparer .

Y at-il une idée, comment résoudre ce problème?

Le code:

Compare Process Diagram Image [Arguments] ${ImageName} ${ImageScore} ${scoreFromImage} = Get Match Score ${ImagesDirectory}${ImageName}.png ${scoreToString} = Convert To String ${scoreFromImage} ${scoreNumberPrecision} = Get Substring ${scoreToString} 0 6 Run Keyword If ${scoreNumberPrecision} == ${ImageScore} Log Successful ELSE Log Fail

+0

Je pense que la partie intéressante est pas tant RF et le 'Obtenir match Score' mais le code qui crée l'instantané. Utilisez-vous RF avec sélenium2library et avez-vous essayé d'utiliser Xvfb dans votre travail Jenkins? –

+0

Oui, j'utilise avec selenium2library et le mot-clé, qui créer un instantané est 'SikuliLibrary.Get Match Score'. A propos de Jenkins et Xvfb - Non, je n'ai pas essayé. – Rumen

+0

alors je essayer: https://wiki.jenkins-ci.org/display/JENKINS/Xvfb+Plugin Aucune capture d'écran sans écran, me semble raisonnable. –

Répondre

0

Résolu:

La machine virtuelle doit être pas fermée par le bouton « X ». La manière correcte: https://support.microsoft.com/en-us/kb/302801 Je .bat, qui contient tscon.exe %SESSIONNAME% /dest:console, après l'exécution - la machine virtuelle est fermée correctement. "Jenkins slave jar" doit également être en cours d'exécution.

0

Exécution Sikuli test sur VM est possible, mais besoin de garder la session ouverte. Nous ne pouvons pas exécuter le script Sikuli sur un PC verrouillé. Lorsque vous fermez VM, il est verrouillé et le test échoue. Sikuli a besoin d'images pour comparer et cliquer, si la session est verrouillée, il n'y a pas d'images, donc le test échoue. Alors, comment pouvons-nous surmonter cela? : https://support.smartbear.com/viewarticle/85926/

référence cette URL pour le réglage. En appliquant cela, vous pouvez exécuter sikuli Test avec la fenêtre réduite de VM. (Vous ne pouvez toujours pas fermer la fenêtre WM)

+0

Hmm, bon point, mais oui - Je ne peux toujours pas utiliser le test, lorsque ma machine virtuelle est fermée. – Rumen

+0

J'ai trouvé la solution, la réponse est ci-dessous :) – Rumen