Sur la démo d’Asqatasun, un audit d’une page utilisant Angular était toujours en échec. @mfaure a aussi rencontré le même problème avec de l’Angular 2.
L’URL en question :
http://revillweb.github.io/angularjs-by-example/#/
Pour les plus pressés, Asqatasun audite très bien cette URL,
mais il faut lui fournir une URL sans le #/
à la fin.
Pour des URL plus complexe, comme /angularjs-by-example/#/popular
, il faudra donc s’orienter vers un audit de scénario avec comme 1er URL /angularjs-by-example/
et ensuite utiliser “clickElement” dans le fichier JSON de scénario. Exemple de fichier JSON à la fin de ce message.
1er piste : la version ESR de Firefox
La première piste explorée fut de vérifier si cette URL fonctionnait avec la version ESR de Firefox actuellement utilisé par Asqatasun.
La réponse est oui : cette URL fonctionne parfaitement avec cette ancienne version ESR de Firefox. L’affichage et les interactions à la souris, comme au clavier fonctionne de la même manière qu’avec un Firefox récent.
2ème piste : les logs
L’URL /angularjs-by-example/
Pour cette URL, l’audit fonctionne correctement, et les logs /var/log/asqatasun/asqatasun.log
nous l’indique clairement :
INFO (…)webapp.orchestrator.AsqatasunOrchestratorImpl - Launching audit Page on http://revillweb.github.io/angularjs-by-example/ INFO (…)service.command.AbstractScenarioAuditCommandImpl - Loading content for http://revillweb.github.io/angularjs-by-example/ INFO (…)service.command.AbstractScenarioAuditCommandImpl - http://revillweb.github.io/angularjs-by-example/ has been loaded INFO (…)service.command.AuditCommandImpl - Adapting http://revillweb.github.io/angularjs-by-example/#/ INFO (…)service.command.AuditCommandImpl - http://revillweb.github.io/angularjs-by-example/#/ has been adapted (…) INFO (…)webapp.orchestrator.AsqatasunOrchestratorImpl - Audit page terminated on http://revillweb.github.io/angularjs-by-example/
L’URL /angularjs-by-example/#/
Pour cette 2ème URL, l’audit plante dès le début… @koj une idée ?
issue #157
INFO (…)webapp.orchestrator.AsqatasunOrchestratorImpl - Launching audit Page on http://revillweb.github.io/angularjs-by-example/#/ INFO (…)service.command.AbstractScenarioAuditCommandImpl - Loading content for null WARN (…)service.command.AbstractScenarioAuditCommandImpl - Audit Status is ERROR while SCENARIO_LOADING was required WARN (…)service.command.AuditCommandImpl - Audit status isERROR whileCONTENT_ADAPTING was required WARN (…)service.command.AuditCommandImpl - Audit status isERROR whilePROCESSING was required WARN (…)service.command.AuditCommandImpl - Audit status isERROR whileCONSOLIDATION was required WARN (…)service.command.AuditCommandImpl - Audit status isERROR whileANALYSIS was required
Fichier JSON
{ "type": "script", "seleniumVersion": "2", "formatVersion":1, "steps": [ { "type": "get", "url": "http://revillweb.github.io/angularjs-by-example/" }, { "type": "clickElement", "locator": { "type": "css selector", "value": "img.hidden-sm.hidden-xs" } }, { "type": "clickElement", "locator": { "type": "link text", "value": "POPULAR" } }, { "type": "clickElement", "locator": { "type": "xpath", "value": "//ul[@class='list-of-shows']/li[3]/show/div/div[2]/div/a" } } ], "data": { "configs": {}, "source": "none" }, "inputs": [], "timeoutSeconds": 60 }