zoukankan      html  css  js  c++  java
  • 用例编写规则、命令行执行用例、用例执行的先后顺序

    用例编写规则:(按以下规则编写,否则pytest不会正常执行到用例)

    文件名以 test_*.py 开头和 *_test.py 结尾的文件
    函数 以test_开头
    类 以Test开头,且不能包含 __init__ 方法
    类里面的方法 以test_开头
    所有的包 pakege 必项要有__init__.py 文件
    断言必须使用assert(py的原生断言方法)

    执行用例:(命令行)
    查看帮助(可用参数):                                    pytest -h (pytest --help)
    执行某个目录下所有用例 :                          pytest      (一般情况下都默认这样运行,默认查找所有符合的用例运行)
    执行某个.py文件内用例:                             pytest xx.py
    执行指定的文件内某个函数、方法:  pytest test_demo.py::test_func  、pytest test_demo.py::TestClass::test_method    (::表示某节点,可用来分隔使用,这样可以指定运行)

    运行某个mark标记的用例:                        pytest -m login (运行所有被装饰器@pytest.mark.login修饰的用例,即只要用例前有这个装饰器标记的,都会被运行 )
    运行用例遇到错误时立即停止:                  pytest -x test_demo.py(想不停止的话,就普通的运行就行:pytest)
    运行用例达到指定错误数量时停止:            pytest --maxfail=5(这表示用例运行达到5个错误时,会停止运行)
    关闭信息:                                                    --tb=no
    只输入assert的错误信息:                        --tb==short
    用一行来展示错误信息:                          --tb=line (只显示错误的位置行数)
    显示测试函数的执行速度:                       --duration=0

    在编辑器pycharm内进行执行:三种方式来执行:直接右键run,unittest,pytest
    随便写一个函数然后右键运行:                                  会出现:run 函数名
    当脚本导入使用了unittest时,右键运行会出现:              run 'Unittests in xxx'
    那么:当脚本导入使用了pytest时,要想使用pytest去运行,就要先设置运行器了:

    Setting--Tools--Python Integrated Tools--项目名称--Default test runner--选择py.test
    然后鼠标选中,右键可见:run 'py.test in xxx'(这样就可以pytest方式进行运行脚本了)


    用例执行的先后顺序:


    如上:

    执行后会按照脚本用例顺序执行(从上至下);
    而不同于unittest(‘unittest中执行脚本用例时,根据用例的字母ASCII码的排序来执行,数字也按照数字从小到大来执行’)

  • 相关阅读:
    关于分布式的一些理解和认识
    Git使用详细教程
    Kettle 7启动 Spoon.bat 时报错“A Java Exception has occurred.”的解决方法
    postgresql 9源码安装
    intel笔记本cpu型号后缀详解(M,U,QM,MQ,HQ,XM)
    LAMP部署流水
    四种mysql存储引擎
    MySQL日志
    MySQL存储引擎总结
    MySQL存储引擎中的MyISAM和InnoDB
  • 原文地址:https://www.cnblogs.com/QiKa/p/13234762.html
Copyright © 2011-2022 走看看