设为首页 收藏本站
查看: 703|回复: 0

[经验分享] robot framework 安装

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-1-22 08:32:38 | 显示全部楼层 |阅读模式
  第一步: 安装python
  • root@manu:~/code/c/self/hello# python -V
  • Python 2.7.3

    我就不多说了,如果装不上python,后面内容也不需要看了。

    第二步: 安装 robotframework
    下载地址:http://code.google.com/p/robotfr ... mework-2.7.5.tar.gz
     

  • tar zxvf robotframework-2.7.5.tar.gz

  • cd robotframework-2.7.5

  • python setup.py install


    第三步:安装robotframework-seleniumlibrary
    这步骤应该是可选的,这是一个web test library。当时我同事建议我装上我就装上了,具体作用我自己也不明了。
   
    下载地址:http://code.google.com/p/robotfr ... rary/downloads/list

  • tar -zxvf robotframework-seleniumlibrary-2.9.1.tar.gz

  • cd robotframework-seleniumlibrary-2.9.1

  • python setup.py install

    整个robot framework的框架搭建是非常简单的,这也是这个东西的优势。如果巨复杂,谁愿意用啊?

    下面是关键部分,我用我前段时间写的红黑树的测试代码作为例子。我的红黑树有测试代码:这些代码不需要看,我测试了创建,插入,删除这几个接口。这个测试程序会编译成可执行程序,如果测试通过,返回0,如果出现异常,或者返回值是其他值,或者干脆就段错误了,也会被robot framework捕获到,最终生成结果报告。

    下面开始详细步骤:

    1 建立一个auto_test的目录,将来我们的测试脚本都会放在这个下面。

  • mkdir ~/auto_test

   
    2 为rb_tree 这个程序建立一个测试代码坐在的目录


  • cd ~/auto_test
  • mkdir rb_tree

    3 写测试脚本:


  • root@manu:~/auto_test/rbtree/library# cd ..
  • root@manu:~/auto_test/rbtree# ll
  • 总用量 16
  • drwxr-xr-x 3 root root 4096 12月 23 13:48 ./
  • drwxr-xr-x 4 manu root 4096 12月 23 13:15 ../
  • drwxr-xr-x 2 root root 4096 12月 23 13:49 library/
  • -rw-r--r-- 1 root root 481 12月 23 13:48 test_rbtree.txt
  • root@manu:~/auto_test/rbtree# ll library/
  • 总用量 12
  • drwxr-xr-x 2 root root 4096 12月 23 13:49 ./
  • drwxr-xr-x 3 root root 4096 12月 23 13:48 ../
  • -rw-r--r-- 1 root root 100 12月 23 13:38 test_rbtree.py

    我们看下test_rbtree.txt的内容:
24774106_1356242215PL9n.jpg

    上面这种格式是robot framework支持的三种文档格式之一。这三种格式是
    1 HTML ,不多说。
    2 TSV格式 ,这个我没用过,我也不懂,不多说
    3 纯文本格式,比如说我这个test_rbtree.txt。(汗一个,总算有个稍懂一点的了)
    官方文档里面还提高了reST格式,这个咱也不懂。但是对这个感兴趣的筒子可以去看官方文档,如果英语不过关的筒子可以去http://blog.sina.com.cn/s/blog_654c6ec70100zj6p.html 这个地址,这个博主写了好多篇robot framework的文章。

    一个test case 应该有四个部分组成,Setting,Variable,Testcase,Keyword,但是也不是必须的,比如我的test case 只有2个,Setting 和Testcase .

    Setting 一般是告诉pybot 我的测试库文件在哪儿,比如我的测试代码就是library下的test_rbtree.py,一些资源文件,变量文件也会在这里声明,但是我们没有这些。

    其中Force Tags会在输出结果中体现。我们起一个比较有意义的tag,比如红黑树是基本的数据结构,我所有的基本数据结构的tag都命名为 basic data  structure 。 他们就能在输出中聚在一起。

    Test Cases 中test_rbtree表示我这一测试项的名字是test_rbtree,这个名字可以随便起,没关系。但是最好是能明确告知这个测试测的是什么。

    Argument这一列下面的test_rbtree表示的是function,必须出现在测试库文件里面,就是在library/test_rbtree中必须要有test_rbtree这个function。

   

  • root@manu:~/auto_test/rbtree# cat library/test_rbtree.py


  • import os

  • def test_rbtree():

  •     return os.system('/home/manu/code/c/self/rbtree/test')

    我们这个测试项的名字是test_rbtree,执行library/test_rbtree.py 里面的test_rbtree 函数,将返回值给val变量,
判断 val == 0,如果val ==0,表示测试通过,否则,测试失败。

    Should Be True 是Robot Framework 自动提供的。表示应该是表达式应该成立,如果不成立表示failed。

    这就比较简单了,简单地说我们的一个测试例子就完成了,下面我们利用pybot生成报表。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-167766-1-1.html 上篇帖子: LInux Shell基础 下篇帖子: device eth0 does not seem to be present, delaying initialization framework robot
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表