Py.Test : Reporting and HTML output

前端 未结 3 709
北恋
北恋 2021-02-19 01:34

This is not a technical question at all really. However, I can not locate my .HTML report that is supposed to be generated using:

py.test --cov-report htm

相关标签:
3条回答
  • 2021-02-19 02:22

    I think you also need to specify the directory/file you want coverage for like py.test --cov=MYPKG --cov-report=html after which a html/index.html is generated.

    0 讨论(0)
  • 2021-02-19 02:26

    if you do not specify --cov=/path/to/code then it will not generate the html at all.

    $ py.test --cov-report html test_smoke.py
    == test session starts == 
    platform linux2 -- Python 2.7.12, pytest-3.4.0, py-1.5.2, pluggy-0.6.0 rootdir: /home/someuser/somedir, inifile: plugins: xdist-1.22.0, forked-0.2, cov-2.5.1 collected 3 items                                                                 
    
    
    test_smoke.py ...                                             [100%]
    
    == 3 passed in 0.67 seconds ==
    

    We can see that there is no message that output was created... However if we specify --cov=...

    $ py.test --cov-report html test_smoke.py --cov=/path/to/code
    == test session starts ==
    platform linux2 -- Python 2.7.12, pytest-3.4.0, py-1.5.2, pluggy-0.6.0
    rootdir: /home/someuser/somedir, inifile:
    plugins: xdist-1.22.0, forked-0.2, cov-2.5.1
    collected 3 items                                                                                                                                                                                                                                                         
    
    test_smoke.py ...                                            [100%] 
    
    ---------- coverage: platform linux2, python 2.7.12-final-0 ----------
    Coverage HTML written to dir htmlcov
    

    We now see that there are no stats for tests that passed, instead we see that coverage was written to HTML and sent to the default directory: ./htmlcov

    NOTE: if you want a different directory, then affix :/path/to/directory to the output style html -> py.test --cov-report html:/path/to/htmldir test_smoke.py --cov=/path/to/code

    If you see a plain html file, this is an indication that your problem is the --cov=/path/to/my/pkg perhaps... are you sure that the code you are testing lives here?

    0 讨论(0)
  • 2021-02-19 02:26

    If you want to generate report in html, give full file path of the test file.

    py.test --cov-report html test_file_name.py --cov=/home/ubuntu/venv/python3/lib/python3.7/site-packages/test/
    

    Then start a python server

    python -m http.server 
    

    Navigate to the html file in htmlcov directory

    http://0.0.0.0:8000/venv/python3/lib/python3.7/site-packages/htmlcov/
    

    You will see the report

    0 讨论(0)
提交回复
热议问题