python 의 pytest 프레임 워 크 의 명령 행 매개 변수 상세 설명(상)
pytest 는 강력 한 python 자동화 테스트 도구 로 각종 유형 이나 등급 의 소프트웨어 테스트 작업 을 감당 할 수 있 습 니 다.pytest 는 assert 재 작성,제3자 플러그 인,그리고 다른 테스트 도구 와 비교 할 수 없 는 fixture 모델 을 포함 하여 다양한 기능 을 제공 합 니 다.pytest 는 소프트웨어 테스트 프레임 워 크 로 명령 행 도구 로 테스트 사례 를 자동 으로 찾 아 실행 하고 테스트 결 과 를 보고 할 수 있 습 니 다.풍부 한 기초 라 이브 러 리 가 있어 사용자 가 테스트 용례 를 작성 하 는 효율 을 대폭 높 일 수 있다.확장 성 이 있어 서 사용 자 는 스스로 플러그 인 을 만 들 거나 제3자 가 제공 하 는 플러그 인 을 설치 할 수 있 습 니 다.다른 도구 와 쉽게 통합 하여 사용 할 수 있다.예 를 들 어 지속 적 인 통합,웹 자동화 테스트 등 이다.
다음은 pytest 가 다른 프레임 워 크 에 비해 장점 을 열거 하 였 다.
1.간단 한 테스트 는 간단하게 작성 할 수 있다
2.복잡 한 테스트 도 간단하게 작성 할 수 있다
3.테스트 의 가 독성
4.손 에 넣 기 쉽다
5.유 니 테 스 트 처럼 self.assert**를 사용 하 는 것 이 아니 라 네 이 티 브 assert 키워드 만 사용한다 고 단언 합 니 다.
6.pytest 는 unittest 와 nose 가 작성 한 테스트 용례 를 실행 할 수 있 습 니 다.
위의 대부분의 결론 은 사실 제 가 개인 적 으로 정리 한 것 이 아니 라 제 가 한 권 의 책 에서 본 것 입 니 다.저도 이 틀 을 막 접 했 기 때문에 아 는 것 도 많 지 않 습 니 다.또 하나의 중요 한 이 유 는 글 을 쓰 는 데 이른바 과학 이론 이 부족 한 것 같다 는 것 이다.실제 작업 중 에 쓸 수 있 는 지 없 는 지 잘 쓸 수 있 는 지 는 자기 자신 에 게 달 려 있 습 니 다!)^ ^잔말 말고!
첫 번 째 테스트 함수 작성(예)
from selenium import webdriver
def testOpenUrl():
try:
driver = webdriver.Firefox() #
driver.get('http://www.baidu.com') #
title = driver.title # title
assert title == ' , ' #
except AssertionError:
raise AssertionError(' !')
driver.quit()
용례 가 간단 한 것 을 볼 수 있 습 니 다.일반적인 함수(브 라 우 저 를 구동 하고 바 이 두 첫 페이지 를 열 고 첫 페이지 의 title 이 정확 한 지 단언 합 니 다)입 니 다.그러면 pytest 는 테스트 용례 를 어떻게 실행 합 니까?cmd 단말 기 를 통 해 현재 용례 가 있 는 디 렉 터 리 로 바 꿀 수 있 습 니 다.pytest 를 입력 하면 됩 니 다.실행 결 과 는 다음 과 같 습 니 다.
pytest 실행 사례 명령 행 인자
위 에서 우 리 는 이미 용례 를 집행 하 는 명령 이 pytest 라 는 것 을 배 웠 습 니 다.그렇다면 정말 이렇게 간단 합 니까?사실은 그렇지 않 습 니 다.pytest 는 우리 가 실행 할 수 있 는 명령 행 인 자 를 많이 제공 합 니 다.다음은 우리 가 일일이 소개 하고 보 여 드 리 겠 습 니 다.
1.-v:pytest-v 설명:용례 가 있 는 파일 과 용례 이름 등 보다 상세 한 실행 정 보 를 출력 할 수 있 습 니 다.
2.-s:pytest-s 설명:우리 의 사례 에서 의 변조 정 보 를 입력 하 십시오.예 를 들 어 print 의 인쇄 정보 등 입 니 다.우 리 는 위 에서 8 줄 에 print(driver.title)를 추가 합 니 다.우 리 는 우리 의 사례 를 다시 실행 해 보 겠 습 니 다.
3.m:pytest-m"태그"설명:특정한 테스트 용례 를 실행 합 니 다.우 리 는 우리 의 용례 를 다시 한 번 수정 하고 새로운 용례 를 추가 했다.
from selenium import webdriver
import pytest
@pytest.mark.run_this_testcase
def testOpenUrl():
try:
driver = webdriver.Firefox() #
driver.get('http://www.baidu.com') #
title = driver.title # title
print(driver.title)
assert title == ' , ' #
except AssertionError:
raise AssertionError(' !')
driver.quit()
def testBaidu():
driver = webdriver.Firefox() #
driver.get('http://www.baidu.com') #
title = driver.title # title
assert title == ' , ' #
표 시 된 용례 만 실 행 했 고 새로 추 가 된 용례 는 실행 되 지 않 았 음 을 볼 수 있 습 니 다.
4.k:pytest-k"키워드"설명:실행 사례 는"키워드"의 사례 를 포함한다.
5.-q:pytest-q 설명:콘 솔 의 출력 을 간소화 하면 출력 정보 와 위의 결과 가 모두 다르다 는 것 을 알 수 있 습 니 다.아래 그림 에는 pass 결 과 를 대체 하 는 두 개의..점 이 있 습 니 다.
상기 5 개의 매개 변 수 는 여러분 이 직접 시도 해 보 세 요.다음 글 은 다른 자주 사용 하 는 매개 변수의 사용 과 pytest 가 테스트 사례 를 어떻게 발견 하 는 지 계속 설명 할 것 입 니 다!
4.567915.다른 명령 옵션 의 사용 을 계속 업데이트 하고 pytest 와 테스트 사례 를 수집 하 는 규칙!
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
로마 숫자를 정수로 또는 그 반대로 변환그 중 하나는 로마 숫자를 정수로 변환하는 함수를 만드는 것이었고 두 번째는 그 반대를 수행하는 함수를 만드는 것이었습니다. 문자만 포함합니다'I', 'V', 'X', 'L', 'C', 'D', 'M' ; 문자열이 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.