pytest를 통해 multirpocessing을 사용할 때 적용 범위를 측정하는 방법은 무엇입니까?

뉴스 쿨러

을 통해 단위 테스트를 실행합니다 pytest. 적용 범위를 위해 coverage.py.

내 단위 테스트 중 하나에서를 통해 함수를 실행 multirpocessing하고 적용 범위는를 통해 실행되는 함수를 반영하지 않지만 multirpocessing어설 션은 작동합니다. 그것이 제가 해결하려는 문제입니다.

테스트는 다음과 같습니다.

import time
import multiprocessing

def test_a_while_loop():
    # Start through multiprocessing in order to have a timeout.
    p = multiprocessing.Process(
        target=foo
        name="Foo",
    )
    try:
        p.start()
        # my timeout
        time.sleep(10)
        p.terminate()
    finally:
        # Cleanup.
        p.join()

    # Asserts below
    ...

테스트를 실행하고 범위를 확인하려면 Ubuntu에서 다음 명령을 사용합니다.

coverage run --concurrency=multiprocessing -m pytest my_project/
coverage combine
coverage report

문서에서 커버리지가 다중 처리를 올바르게 설명하기 위해 수행 할 작업에 대한 지침을 제공합니다 ( 여기 ). 그래서 나는 다음 .coveragerc과 같이 설정했습니다 .

[run]
concurrency = multiprocessing

[report]
show_missing = true

또한 sitecustomize.py다음과 같이 보입니다.

import coverage
coverage.process_startup()

그럼에도 불구하고 위의 기능 multiprocessing은 여전히 ​​적용 범위에 포함되지 않습니다.

내가 뭘 잘못하고 있거나 놓치고 있습니까?

추신 이것은 비슷한 질문처럼 보이지만 내 문제를 다시 해결하지 못합니다. (

뉴스 쿨러

다음 두 가지를 수행하여이 문제를 "수정"했습니다.

  1. 커버리지 패키지를 coverage.py에서 pytest-cov.
  2. 문서process 를 통해 설명한대로 위에이 코드를 추가합니다 .

암호:

try:
    from pytest_cov.embed import cleanup_on_sigterm
except ImportError:
    pass
else:
    cleanup_on_sigterm()

그럼 난 그냥 달려 pytest --cov=my_proj my_proj/

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

TSX 구문을 사용할 때 HTML 범위에서 href를 사용하는 방법은 무엇입니까?

분류에서Dev

Python 코드를 사용하여 동적 범위 지정을 이해하는 방법은 무엇입니까?

분류에서Dev

geom_freqpoly를 사용할 때 범위 끝에서 줄을 제거하는 방법은 무엇입니까?

분류에서Dev

withStyles API를 사용할 때 소품을 통해 React 구성 요소의 스타일을 사용자 정의하는 방법은 무엇입니까?

분류에서Dev

Metal API를 사용할 때 통합 GPU 사용을 요청하는 방법은 무엇입니까?

분류에서Dev

ssh를 통해 푸시 할 때 사용자 ID를 변경하는 방법은 무엇입니까?

분류에서Dev

Excel (2013)에서 명명 된 범위를 사용할 때 전체 범위를 표시하지만 한 셀을 오프셋하는 방법은 무엇입니까?

분류에서Dev

Eloquent의 관계를 통해 where 절을 정적으로 사용하는 방법은 무엇입니까?

분류에서Dev

CodeMirror에서 자동 완성을 위해 사용자 정의 키를 사용할 때 누른 키를 인쇄하는 방법은 무엇입니까?

분류에서Dev

사용자 지정 GridViewItem 템플릿을 사용할 때 ItemContainerTransitions를 사용하는 방법은 무엇입니까?

분류에서Dev

렌더링 함수에서 HTML을 사용할 때 정렬하기 위해 DataTables에서 직교 데이터를 사용하는 방법은 무엇입니까?

분류에서Dev

렌더링 함수에서 HTML을 사용할 때 정렬하기 위해 DataTables에서 직교 데이터를 사용하는 방법은 무엇입니까?

분류에서Dev

expect을 사용하여 telneting 할 때 expect_out을 통해 다음 명령 입력 변수로 출력 단어를 grep하는 방법은 무엇입니까?

분류에서Dev

'mv'로 파일을 이동할 때 dir의 setgid 비트를 통해 그룹 변경을 적용하는 방법은 무엇입니까?

분류에서Dev

MXnet에서 사용자 지정 반복자를 사용할 때 테스트 세트의 레이블을 예측하는 방법은 무엇입니까?

분류에서Dev

GCP Identity Platform을 통해 IdP로 사용할 때 okta에서 사용자 데이터를 가져 오는 방법은 무엇입니까?

분류에서Dev

증분을 추적하기 위해 정적 변수를 사용하는 방법은 무엇입니까?

분류에서Dev

fputcsv를 사용할 때 ""을 제거하는 방법은 무엇입니까?

분류에서Dev

SceneKit을 사용할 때 특정 위치에 텍스트를 배치하는 방법은 무엇입니까?

분류에서Dev

C ++ lock_guard를 사용할 때 범위를 강화하는 방법은 무엇입니까?

분류에서Dev

gSoap을 사용할 때 C ++로 수신 된 데이터를 해석하는 방법은 무엇입니까?

분류에서Dev

LuaBinaries 및 LuaBridge를 사용할 때 누락 된 Lua DLL을 해결하는 방법은 무엇입니까?

분류에서Dev

프록시를 통해 Kindle을 사용하는 방법은 무엇입니까?

분류에서Dev

Vagrant를 통해 Elasticsearch Marvel을 사용하는 방법은 무엇입니까?

분류에서Dev

정수를 입력 할 때까지 사용자 입력을 반복하는 방법은 무엇입니까?

분류에서Dev

최적의 성능을 위해 Elastic Search 5.5.0을 사용할 때 Raw RestClient를 올바르게 닫는 방법은 무엇입니까?

분류에서Dev

사용자가 작업 스케줄러를 통해 RDP 아이콘을 실행할 때 배치 파일을 실행하는 방법은 무엇입니까?

분류에서Dev

Codable을 사용하여 Firestore 문서를 변환 할 때 fieldNameConflicts 클라이언트 측을 효과적으로 방지하는 방법은 무엇입니까?

분류에서Dev

SSH를 통해 연결할 때 IP 대신 사용자 서버 이름을 제공하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    TSX 구문을 사용할 때 HTML 범위에서 href를 사용하는 방법은 무엇입니까?

  2. 2

    Python 코드를 사용하여 동적 범위 지정을 이해하는 방법은 무엇입니까?

  3. 3

    geom_freqpoly를 사용할 때 범위 끝에서 줄을 제거하는 방법은 무엇입니까?

  4. 4

    withStyles API를 사용할 때 소품을 통해 React 구성 요소의 스타일을 사용자 정의하는 방법은 무엇입니까?

  5. 5

    Metal API를 사용할 때 통합 GPU 사용을 요청하는 방법은 무엇입니까?

  6. 6

    ssh를 통해 푸시 할 때 사용자 ID를 변경하는 방법은 무엇입니까?

  7. 7

    Excel (2013)에서 명명 된 범위를 사용할 때 전체 범위를 표시하지만 한 셀을 오프셋하는 방법은 무엇입니까?

  8. 8

    Eloquent의 관계를 통해 where 절을 정적으로 사용하는 방법은 무엇입니까?

  9. 9

    CodeMirror에서 자동 완성을 위해 사용자 정의 키를 사용할 때 누른 키를 인쇄하는 방법은 무엇입니까?

  10. 10

    사용자 지정 GridViewItem 템플릿을 사용할 때 ItemContainerTransitions를 사용하는 방법은 무엇입니까?

  11. 11

    렌더링 함수에서 HTML을 사용할 때 정렬하기 위해 DataTables에서 직교 데이터를 사용하는 방법은 무엇입니까?

  12. 12

    렌더링 함수에서 HTML을 사용할 때 정렬하기 위해 DataTables에서 직교 데이터를 사용하는 방법은 무엇입니까?

  13. 13

    expect을 사용하여 telneting 할 때 expect_out을 통해 다음 명령 입력 변수로 출력 단어를 grep하는 방법은 무엇입니까?

  14. 14

    'mv'로 파일을 이동할 때 dir의 setgid 비트를 통해 그룹 변경을 적용하는 방법은 무엇입니까?

  15. 15

    MXnet에서 사용자 지정 반복자를 사용할 때 테스트 세트의 레이블을 예측하는 방법은 무엇입니까?

  16. 16

    GCP Identity Platform을 통해 IdP로 사용할 때 okta에서 사용자 데이터를 가져 오는 방법은 무엇입니까?

  17. 17

    증분을 추적하기 위해 정적 변수를 사용하는 방법은 무엇입니까?

  18. 18

    fputcsv를 사용할 때 ""을 제거하는 방법은 무엇입니까?

  19. 19

    SceneKit을 사용할 때 특정 위치에 텍스트를 배치하는 방법은 무엇입니까?

  20. 20

    C ++ lock_guard를 사용할 때 범위를 강화하는 방법은 무엇입니까?

  21. 21

    gSoap을 사용할 때 C ++로 수신 된 데이터를 해석하는 방법은 무엇입니까?

  22. 22

    LuaBinaries 및 LuaBridge를 사용할 때 누락 된 Lua DLL을 해결하는 방법은 무엇입니까?

  23. 23

    프록시를 통해 Kindle을 사용하는 방법은 무엇입니까?

  24. 24

    Vagrant를 통해 Elasticsearch Marvel을 사용하는 방법은 무엇입니까?

  25. 25

    정수를 입력 할 때까지 사용자 입력을 반복하는 방법은 무엇입니까?

  26. 26

    최적의 성능을 위해 Elastic Search 5.5.0을 사용할 때 Raw RestClient를 올바르게 닫는 방법은 무엇입니까?

  27. 27

    사용자가 작업 스케줄러를 통해 RDP 아이콘을 실행할 때 배치 파일을 실행하는 방법은 무엇입니까?

  28. 28

    Codable을 사용하여 Firestore 문서를 변환 할 때 fieldNameConflicts 클라이언트 측을 효과적으로 방지하는 방법은 무엇입니까?

  29. 29

    SSH를 통해 연결할 때 IP 대신 사용자 서버 이름을 제공하는 방법은 무엇입니까?

뜨겁다태그

보관