如何在运行 py.test -sv B/ 时读取命令行参数

问题描述

我在目录 A 中有一个文件 conftest.py。我在目录 B 中有一些测试文件,它在 A 中。我使用 py.test -sv B/ 运行所有这些文件。但是有时我想传递参数 -val="Hello" 并存储在文件中。

我想这样做:

import argparse
parser=argparse.ArgumentParser()
parser.add_argument("val",help="value")
args=parser.parse_args()
print(args.val)
a_file=open("file_val","w")
a_file.write(args.val)
a.file.close()
def pytest_addoption(parser):
    parser.addoption("--name",action="store",default="default name")

但是它没有写任何东西并给出错误:无法识别的参数:-sv —val=hello,when I run py.test -sv B/ —val=Hello

所以我尝试了以下操作:

import argparse

def pytest_addoption(parser):
    parser.addoption("--name",default="default name")
    parser.add_argument("val",help="value")
    args=parser.parse_args()
    print(args.val)
    a_file=open("file_val","w")
    a_file.write(args.val)
    a.file.close()

但它给出了错误:当我运行 py.test -sv B/ —val=Hello

时没有方法 add_argument

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)