51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 7666|回复: 0
打印 上一主题 下一主题

[原创] 你入的Httprunner坑有哪些?

[复制链接]
  • TA的每日心情
    无聊
    昨天 09:07
  • 签到天数: 1020 天

    连续签到: 1 天

    [LV.10]测试总司令

    跳转到指定楼层
    1#
    发表于 2020-12-10 09:49:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    1测试积点
    学习Httprunner也有一段时间了,爬的坑一个接着一个,今天来做个总结吧~ 也希望有其他的小伙伴把你入的坑一起分享下。
      从一开始以为不就一个框架嘛,有什么难的,不就方法调用么!再然后,天哪!怎么写?没有思路,最后,哦~好像知道怎么写了,不知道你们在学一个新框架的时候是不是这样的。
      好了,话不多说,开始疯狂的吐槽吧~
      一、代码格式要注意!
      场景:我在编写testcase的时候,可能下一级没有空四格,然后就一直报错,但是也找不到在哪里?
      所以,注意代码格式,层级关系空4个字符

     二、没有错误提示,下手慢点!
      场景:一个很尴尬的案例,我把variables写成了varibales,然后我下一个case还是直接复制,运行时一直提示‘XXX is not found’,当时就想,难道是我方法写错啦?结果,找了一下午这么低级的错误。看来要把自己关小黑屋好好反思了。因为htr的yaml文件没有错误提示,所以要确保每个单词都是对的。

    三、文件名别搞错啦!  相信有很多小伙伴是通过抓包工具下的文件,很多时候会改成yml的格式,所以在运行的时候,千万注意了,找不到文件的时候往往就是文件名出错了。
      四、调用方法不知道哪里了!
      在写层级关系的时候,经常会用到debugtalk.py的方法,然而httprunner的错误提示不是很友好,往往找一个错误要找好久,然后问了领导,可以在每一个方法面加上pdb.set_trace方法,每次调用这个方法的时候,键盘输入n,就可以一步步调试了。

    五、循环操作怎么搞?  当我要多次添加数据或者多次删除数据的时候,不知道怎么重复操作,找了很多资料后发现了一个方法可以在testsuites添加parameters,每一个返回值就可以实现一次testcase的执行,并且csv参数化也能实现。看了官方文档说是数据驱动的思想还有,parameters一定要写在testsuites中,写在testcases是没有用的,不会生效。



    六、原来拼接路径是这样的  在我印象中路径的匹配应该是这样写的:$url+$parmas,但是这样写的话你的路径就是这样的:‘http://url+params’,你的路径就是不对的,怎么能请求接口成功呢?
      所以正确是这样的:

    最后,httprunner作为一个自动化测试框架还是很强大的,还支持Locust性能测试,还在不断的采坑实践中,分享下我目前的坑,给大家排个雷。




    附件: 您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-9-19 06:33 , Processed in 0.060643 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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