zoukankan      html  css  js  c++  java
  • httprunner踩坑记02-->利用parameters参数进行参数化

    前言

      所谓热爱,就是坚持和投入!
    

    一、问题描述

    在之前的httprunner版本中(2.*之前),进行参数化传值利用测试用例中config下的parameters实现,如下所示:

    # testcase_demo.yml文件
    
    - config:
        name: "验证百度搜索是否正确"
        base_url: "https://www.baidu.com"
        parameters:
          search_word: ['天天向上','12306','newdream']
    
    - test:
        name: "百度搜索请求"
        request:
          url: "/s"
          method: GET
          headers:
            User-Agent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36"
            Accept: "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9"
            Accept-Encoding: "gzip, deflate, br"
            Accept-Language: "zh-CN,zh;q=0.9"
          params:
            wd: $search_word
        validate:
          - eq: ["status_code",200]
    

    上述利用命令 hrun testcase_demo.yml 进行执行后,在 httprunner 2.* 上会提示 $search_word 不存在,原因是httprunner 2.*上不支持在测试用例文件中使用parameters字段。

    二、问题解决

    在 httprunner 2.* 版本中,只能在testsuite测试套件文件中调用用例文件的时候才可以使用参数化,如下代码:

    # testsuite测试套件文件内容
    config:
      name: 测试套件
    
    testcases:
      - name: param_demo
        testcase: testcases/testcase_demo.yml
        parameters:
          search_word: ['天天向上','12306','newdream']
    

    此时把之前出现问题代码的config部分中的parameters去掉,使用 hrun testsuite测试套件文件.yml 执行,即可完成参数化功能。

    三、小结

    如还有读者有疑问或者根据步骤还是报错,可加博主QQ或V信咨询。

  • 相关阅读:
    资深技术Leader曹乐:如何成为技术大牛
    深入理解golang: interface
    Redis主体流程分析
    为什么我们总爱讨论技术与业务之间的那些是是非非?
    [产品]九卷读书:产品的视角-产品思维框架
    go http server 编程实践及源码分析
    [产品]九卷读书: 产品的视角-产品经理能力模型
    [产品]:腾讯8分钟产品课
    Golang gRPC学习(02): 编写helloworld服务
    括号生成
  • 原文地址:https://www.cnblogs.com/dream66/p/13112519.html
Copyright © 2011-2022 走看看