问题:
使用 Robot Framework 做一些自动化辅助工具,中间需要用到大量的多层迭代,处理了大量的 JSON 报文,使用了很多变量,
在运行的时候,python 进程就会占用大量内存 (达到 1GB),影响执行速度,最后生成 excel 的时候有时还会报内存错误。
尝试:
python 中有几种方法,
1.减少内存消耗:如使用 xrange、使用生成器 yeild
2.回收内存:
del {变量}
gc.collect()
3.使用高效编译器,如 pypy
困难:
方法 1,难以在 RF 使用,如果要使用需要自己写大量扩展
方法 3,很奇怪,我使用没什么效果,原版 pybot 执行一遍 40 分钟,pypy 的 pybot 跑一边也差不多 40 分钟,内存消耗也差不多。
比较方便应用的感觉就是方法 2 了,
但是 ‘del {变量}’ 这句在 RF 该如何写?
Evaluate del ${res},${response}
直接这样用会报错。