是否可以使用pytest从代码运行测试?我确实找到了pytest.main,但它只是代码中提供的命令行界面.我想从代码中传递一个测试类/函数.
在unittest中,这可能是这样的:
from unittest import TestLoader, TestCase, TestResult
class TestMy(TestCase):
def test_silly(self):
assert False
runner = TestLoader()
test_suite = runner.loadTestsFromTestCase(TestMy)
test_result = TestResult()
test_suite.run(test_result)
print(test_result)
最佳答案 是的,有可能,例如:
from pytest import main
class TestMy:
def test_silly(self):
assert False
main(['{}::{}'.format(__file__, TestMy.__name__)])
您可以将任何参数传递给main,就像从命令行调用一样.