I want to analyze which keywords I need to improve. I have a robot report, how can I get average time for a keyword to complete, overall time for keywords with the same name. Is there a built-in solution or should I write one myself?
Hello Vitaly ,
Have you made a look on log.html ? when you open it and take a test for example you will see the whole execution time and each step execution time
please see this screenshot
Yes, I saw it, this data gave me close to nothing. Yes, I can find some problems, but I need detailed statistics to make assumptions, not just for one or a few cases.I have around 700+ tests and over 50000 steps. I need to know which steps consume more time (average time, sum of time, etc.), so I can improve my tests or application.
robotframework-dashboard .. if i remember correctly, it shows the most timeconsuming keywords ..
I think you should explore tools like that one mentionned by @rasjani
otherwise, i suggest you make a small helper code that parse output.xml ( the information is in elapsed=“0.584612” … )
Hi,
Here is a python with ResultsVisitor I made a while ago.
Had some time consuming keywords, and needed to evaluate which ones, number of call etc…
It takes several log files as input, then write in a csv for further check and analysis.
KwdTime.py (2.4 KB)
It worked for my usage and needs, maybe it can help a bit ![]()
Regards
Charlie
As others have suggested, parsing Robot’s output.xml (or output.json) is easy and it’s easiest if you use Robot’s own parsing modules for that. There exists ready made tools for that purpose as well, and this is one that I’d look in this particular case:
Thank you! This is almost what I wanted, because you can’t easily compare MANY keywords. BUT! This tool is generating a DB file for SQLite. So I simply can check all data in BD.
