最近研究了一下RobotFramework,一個Data-Driven的Automation
Framework
下面是一些鏈接:
- Quick Start
http://robotframework.googlecode.com/hg/doc/quickstart/quickstart.html
- RobotDemo
https://bitbucket.org/robotframework/robotdemo/wiki/Home
關於RobotFramework本身網上已經有了很多分析和應用的文章。我主要的目的是想看看RobotFramework的框架和設計。爲了跟蹤代碼運行,找了一個Python的IDE:https://wingware.com/功能比較強大,可惜是個商業工具。
看了一下代碼之後,決定看看有沒有什麼工具可以把python的call graph生成出來,這樣有個整體的比較形象的認識。找了一下,第一個試了一下這個工具:http://pycallgraph.slowchop.com/en/master/,生成的圖像有點不太對頭,感覺問題比較多。又繼續尋找,又發現了一個利用prof數據生成callgraph的工具,非常簡單:https://code.google.com/p/jrfonseca/wiki/Gprof2Dot
這兩個工具都是基於Graphviz的。下面是具體命令:
- python -m profile -o output.pstats pybot quickstart.html
- python gprof2dot.py -f pstats output.pstats | dot -Tpng -o robot.png
如果圖像比較大,生成的png文件會比較模糊,可以生成svg格式,瀏覽器可以直接打開:
python gprof2dot.py -fpstats output.pstats | dot -Tsvg -orobot.gv
下面是圖像結果:
這個圖片可能有點大,不過放大來看還是挺清楚的。從上倒下,紅色到黃色到綠色都是具體測試執行的call path,其它都是框架裏面的東西。
SVG格式的放在了CSDN資源共享裏:http://download.csdn.net/detail/u013961875/7413863