zoukankan      html  css  js  c++  java
  • Pytest 单元测试框架之参数化

    1、传入单个参数

    • pytest.mark.parametrize(argnames,argvalues)
      • argnames:参数名  
      • argvalues:参数对应的值,类型必须为可迭代类型,一般为 list  
    import pytest
    
    class Test01():
    
        @pytest.mark.parametrize("school",["深圳多测师","广州多测师","上海多测师"])
        def test_dcs(self,school):
            print(school)
    
    if __name__ == '__main__':
        pytest.main(["-s","test_demo1.py"])
    
    # 结果如下
    
    test_demo1.py 
    深圳多测师.
    广州多测师.
    上海多测师.

    2、传入多个参数

    • pytest.mark.parametrize((arg1,arg2),[(argvalue1,argvalue2),(argvalue3,argvalue4)])
      • list 中每个元素都是个元组,元组里的每个元素都与参数一一对应  
    import pytest
    
    class Test01():
    
        @pytest.mark.parametrize(("school","schoolmaster"),
                                 [("深圳多测师","Mr.Chen"),
                                  ("上海多测师","Mr.Xie"),
                                  ("广州多测师","Mr.Fu")])
        def test_dcs(self, school, schoolmaster):
            print("{}校区的校长是{}".format(school,schoolmaster))
    
    if __name__ == '__main__':
        pytest.main(["-s","test_demo1.py"])
    
    # 结果如下
    test_demo1.py 
    深圳多测师校区的校长是Mr.Chen.
    上海多测师校区的校长是Mr.Xie.
    广州多测师校区的校长是Mr.Fu.
  • 相关阅读:
    php-beanstalkd消息队列类分享
    php curl抓取类分享
    df -i 100%时处理方法
    php生成红包
    PHP牛牛游戏算法
    Yii 框架不同逻辑处理方法统一事务处理
    Linux上web服务器搭建
    Linux 上pcntl安装步骤
    PHP错误级别设置
    day40 ,epoll,数据库相关概念
  • 原文地址:https://www.cnblogs.com/ZhengYing0813/p/13225380.html
Copyright © 2011-2022 走看看