从 python 文件而不是从命令行运行 pytest 测试

nan*_*nga 8 python pytest

我在一个目录 (c:\Tests) 中有三个 python 文件,我尝试使用文件 TestCases1.py 中的 pytest 运行测试,但没有成功。我是 python 新手,我不知道我是否问了正确的问题。我看过几个示例,但几乎所有示例都使用命令行来运行测试,我想从 python 文件运行它们。由于我是测试新手,我希望得到一个非常简单的答案(我见过一些类似的问题,但没有得到答案)。我正在使用 Python 36-32 和 Eclipse Oxygen 3a。

min_max.py => 一些待测试的基本功能

def min(values):
    _min = values[0]
    for val in values:
        if val < _min:
            _min = val
    return _min

    

def max(values):
    _max = values[0]
    for val in values:
        if val > _max:
            _max = valal
    return _max
Run Code Online (Sandbox Code Playgroud)

min_max_test.py => 一些函数测试

import min_max

def test_min():
    print("starting")
    values = (2, 3, 1, 4, 6)
    val = min(values)
    assert val == 1
    print("done test_min")


def test_max():
    print("starting")
    values = (2, 3, 1, 4, 6)
    val = max(values)
    assert val == 6
    print("done test_max") 
Run Code Online (Sandbox Code Playgroud)

TestCases1.py => 我想要运行测试的文件

import pytest
pytest_args = [
    'c:\Tests\min_max_test.py'
]

pytest.main(pytest_args)
Run Code Online (Sandbox Code Playgroud)

nik*_*iko 0

在 中min_max_test.py,测试函数中的minmax变量名称将从内置函数中获取,而不是从 min_max.py 文件中获取。

您要么需要使用类似的东西,要么使用导入而不是完整的模块导入来min_max.min导入这些函数。from

PS 请附上错误消息以及问题,并具体说明您遇到的问题。让它变得更容易:)