运行 从带有 arg 的代码进行测试
Run tests from code with arg
我曾经 运行 使用类似
的命令进行测试
pytest.main('-s path_to_file --my_fixtures_arg1 arg_value')
目前,这样的调用被认为是过时的,您需要通过参数列表来调用此命令。但我无法以任何方式传递必要的参数。谁知道解决方法?
目前 pytest
uses shlex.split
将字符串拆分为参数列表。
如果您的字符串来自数据库、配置文件等,您也可以这样做:
import shlex, sys
args_list = shlex.split(args_string, posix=sys.platform != "win32")
我目前正在使用参数列表,因为传递字符串已被弃用。在你的情况下,我认为这个应该有效:
arguments = ['-s', '--my_fixtures_arg1=arg_value', 'path_to_file']
pytest.main(args=arguments)
我曾经 运行 使用类似
的命令进行测试pytest.main('-s path_to_file --my_fixtures_arg1 arg_value')
目前,这样的调用被认为是过时的,您需要通过参数列表来调用此命令。但我无法以任何方式传递必要的参数。谁知道解决方法?
目前 pytest
uses shlex.split
将字符串拆分为参数列表。
如果您的字符串来自数据库、配置文件等,您也可以这样做:
import shlex, sys
args_list = shlex.split(args_string, posix=sys.platform != "win32")
我目前正在使用参数列表,因为传递字符串已被弃用。在你的情况下,我认为这个应该有效:
arguments = ['-s', '--my_fixtures_arg1=arg_value', 'path_to_file']
pytest.main(args=arguments)