현재 pytest를 사용하여 테스트 도구를 자동화하고 있습니다. 나는 다음과 같은 여러 디렉토리에 걸쳐 시험이 있습니다pytest : 키워드 옵션 (-k)을 사용할 때 디렉토리 스타일 문자열이 처리되지 않습니다.
|-Root
| |-Dir1
| | |-Test1
| | |-Test2
| | |-Test3
| |-Dir2
| | |-Testa
| | |-Testb
| | |-Testc
| |-Dir3
| | |-TestI
| | |-TestII
| | |-TestIII
내가 다른 사람을 제외하여 디렉토리의 집합에서 테스트를 실행할 수 있도록하고 싶습니다. 디렉토리 중 일부는 "test_set_1"및 "test_set_1_extended"와 비슷한 이름을 가지고 있습니다. "test_set_1"을 제외하고 싶지만 "test_set_1_extended"를 유지하여 전체 경로를 키워드로 사용해야합니다. 필자는 pytest가 디렉토리 구조 문자열을 인수로 사용하지 않는다는 키워드 (-k 옵션)를 사용할 때 알아 챘습니다.
구문 에러 : 나는 창 스타일을 시도하는 경우 예를 들어,
py.test -k "not (root\dir1 or dir2)"
나는 구문 오류 얻을 내가 유닉스 스타일을 시도하는 경우 반면에 줄 연속 문자
후 예상치 못한 문자를
py.test -k "not (root/dir1 or dir2)"
나는 ZeroDivisionError를 얻습니다 :
ZeroDivisionError : i 내가 해봤 제로
것들에 의해 nteger 부문 또는 모듈은 다음과 같습니다 디렉토리의 단일 또는 이중 따옴표 문자열을 묶는 : 별도의 '-k의'를 사용
py.test -k "not ('root/dir1' or dir2)"
py.test -k "not ("root/dir1' or dir2)"
을 :
py.test -k "not root/dir1" -k not dir2)
사용 현재 디렉토리 '.'
py.test -k "not (./root/dir1 or dir2)"
슬래시를 이스케이프 : 이들의
py.test -k "not (root\\dir1 or dir2)"
py.test -k "not (root\/dir1 or dir2)"
없음이 문제를 해결 없었다. 누구 pytest 내 경로 문자열을 올바르게 처리하는 방법에 어떤 제안이 있습니까?