(링크 스크랩) 8개의 유용한 pytest 플러그인

개인적으로 저는 2020년부터 AI 관련 회사에 다니면서 pytest 기반의 테스트 자동화를 Python 언어로 작성하고 있습니다(API 테스트, 웹 UI 테스트 자동화도 마찬가지입니다). 제품 코드는 모두 Python으로 되어있습니다. , 그래서 저는 파이썬을 주목하고 있습니다. 익숙해지기 위해서. pytest와 함께 사용할 때 유용한 플러그인(라이브러리) 8개를 추가로 소개하고 있어서, 현 상황에서 어떻게 활용하면 좋을지 간략한 소개와 짧은 생각을 적어보았습니다. 각 플러그인에 대한 설명과 글은 원문에 링크되어 있습니다. . 원제: Python 자동화를 위한 8가지 유용한 pytest 플러그인. 원작자: 파울로 올리베이라. 작성일자: 2024년 11월 5일. URL: https://www.lambdatest.com/blog/pytest-plugins/No. 1) pytest-check: pytest의 주장을 강화하는 라이브러리입니다. 개인적으로는 반환된 json에 있는 목록과 사전에서 항목을 뽑아서 검증하는 경우가 많았는데 이는 쉽게 지원됩니다. 글쎄, 하지만 증가된 종속성과 비교하면(해당 라이브러리를 설치하지 않으면 실행되지 않음) 그다지 이점이 없어 보이므로 제거됩니다. 2번) pytest-bdd: BDD 형식(Feature-Scenario – Give/When/Then 형식)으로 테스트 작성을 지원하는 라이브러리입니다. 이는 많은 관심을 끌었습니다. 특히 UI 테스트 자동화의 경우 처음에는 robots-framework라는 BDD 도구를 이용해서 작성했는데, 테스트 시나리오를 보는 사람도 많지 않았고 pytest의 편리함에 푹 빠져서 더 이상 사용하지 않습니다. pytest에서 BDD를 구현할 수 있다면 좋을 것 같습니다. 3) pytest-xdist: 여러 머신에서 동시에 병렬로 pytest를 실행하는 라이브러리라고 합니다. 개인적으로 단위 테스트나 API 테스트는 작성하는데 시간이 빨리 걸린다고 생각하고, UI 테스트는 테스트 대상/시나리오를 필수 대상에 적절하게 매칭하여 소요 시간을 조정하는 것이 우선이라고 생각하므로 다음과 같은 접근 방식을 선호합니다. 테스트 실행을 분산시켜 테스트 시간을 단축합니다. 나는 그것을하는 것에 혐오감을 가지고 있습니다. 그러나 UI 테스트는 여전히 실행 시간이 오래 걸리므로 분산 실행은 필수 기능입니다. 설명에 나오는 ‘머신’이 물리적인 머신인지 궁금했는데, 여러 프로세스로 나누어서 실행되는 것 같습니다. 해당 예제도 Selenium 테스트 예제인 것을 보면 pytest로 진행하는 UI 테스트에 바로 적용할 수 있을 것 같습니다. 낙서, 낙서. 기록.기록. 4) pytest-randomly: pytest 실행 순서를 무작위로 실행합니까??? 하세요. 첫 줄을 읽고 나랑은 상관없는 일이라는 생각이 들어서 다음 플러그인 소개로 넘어갔습니다. 5번) pytest-html: pytest 결과를 HTML 보고서로 생성하는 플러그인입니다. 아, pytest를 사용하면서 처음부터 이것을 잘 사용하고 있습니다. 6) pytest-datafiles : pytest에서 사용하는 테스트 데이터를 별도의 파일로 관리하고 링크해주는 것 같습니다. 괜찮아 보이는데요. 좀 더 자세히 살펴보자!!! 글쎄요, 여러 데이터를 가지고 테스트를 할 때는 pytest의 매개변수화된 방식을 사용해서 진행하기 때문에 이렇게 하기보다는 테스트 실행 환경마다 서로 다른 값을 입력해야 하는 경우가 종종 있기 때문에 따로 실행하고 환경 매개변수를 받아 데이터를 설정해 주면 됩니다. 런타임에. 이 부분이 쉽나요? 오토메이션? 내 생각엔 그게 좋을 것 같아. 7) pytest-cov: pytest 실행 후 개발 코드의 코드 커버리지를 측정합니다. 이는 개발자 단위 테스트 코드 작성 교육 중에 이미 사용 및 안내되었으므로 통과하지 마십시오. 8) pytest-mock: pytest를 실행할 때 모의를 지원합니다. 이것도 교육 등을 통해 안내됩니다. 그래서 플러그인 3개를 선택하겠습니다. 아 맞다~ pytest-bdd pytest-datafiles pytest-xdist