Python 和 Pytest 的命令行传参

67 阅读1分钟

Python 命令行传参

通过argparse.ArgumentParser 来接收并解析命令行传入的参数 步骤如下

  1. 创建实例 argparse.ArgumentParser
  2. 通过 add_argument() 方法解析要支持的参数
  3. parse_args() 转换并提取参数到 argparse.Namespace 对象中

示例如下

8587c066b39ad2a8e2befbceb91c5ce.jpg

注意: add_argument() 方法 action="store_ture”时,取值规则如下

  • 在命令行没有出现该参数时,该参数取值默认为false
  • 在命令行出现了该参数,该参数取值默认为True

Pytest 命令行传参

  1. 通过pytest 命令行 传参和 Python 命令行传参类似。
  2. 使用到内置的fixture pytest_addoption, 方法参数为 parser, 即 pytest 已定义好的 argparse.ArgumentParser 来传值
  3. 在获取时,使用request.config 来获取 Config 类中存储的关于 命令行参数,ini文件中的配置值
  4. 可以将该值存入到 常量类中,也可以直接返回 类的实例。

4e84830fb5795b9a62769088a918192.jpg