如何使用py.test收集我的测试?

时间:2012-12-14 11:00:08

标签: python pytest

我尝试用py.test收集我的测试,但它没有这样做。

  • 我是否必须在命令行中提供其他选项?

  • Py.test在我的.py文件目录中执行。 还有其他要求吗?

  • 我的测试是否正确命名?在我的代码中,我使用'Test-'表示类,'test_'表示方法。

终端的结果:

> py.test

===============================  in 0.00 seconds ============================
user@host:~/workspace/my_project/src/html_extractor$ py.test

============================= test session starts ===========================
platform linux2 -- Python 2.7.3 -- pytest-2.3.4
plugins: xdist
collected 0 items 

我的测试代码:

class Factories(object):
    TEST_LINKS = ['http://www.burgtheater.at',
                  'http://www.musikverein.at/']

    def links(self):
        for link in self.TEST_LINKS:
            yield link


class TestHTMLExtractor(unittest.TestCase):

    def setUp(self):
        self.factory = Factories()
        self.extractor = HTMLExtractor()


    def test_extract_site_return(self):
        for link in self.factory.links():
             raw_html_page = self.extractor.run(link)

def test_whatever():
    pass

if __name__ == '__main__':
    unittest.main()

1 个答案:

答案 0 :(得分:25)

在默认配置中,测试文件应命名为test_<something>.py。见Changing standard (Python) test discovery