Pytest:如何从测试方法外部访问命令行参数

时间:2018-10-03 22:13:16

标签: python command-line pytest

我在python模块中定义了NON-TEST方法。 (Say- read_test_data()),它必须消耗通过命令行传递的test_ID。我在类中定义了另一个测试方法,该方法调用read_test_data()并从那里获取值。 现在,如何将命令行参数中的值输入非测试方法中?

1 个答案:

答案 0 :(得分:1)

如果您的函数位于一个名为file_name.py的文件中,则将如下所示:

import argparse

def read_test_data(testcase_id):
    print(testcase_id)

if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument("-t", "--testcase_id", help="test case id helper documentation")
    args = parser.parse_args()
    read_test_data(args.testcase_id)

如果您从命令行进行呼叫,例如:

python file_name.py --testcase_id "test1A, test1B"

您将获得输出:

test1A, test1B