Python을 사용하여 Selenium 스크립트에 로그 추가

2327 단어 seleniumtestingpython
셀레늄 스크립트를 실행하면서 테스트 케이스의 모든 실행 로그를 저장하는 것에 대해 생각해 본 적이 있습니까? Python을 사용하여 Selenium에서 이 작업을 수행하는 훨씬 편리한 방법이 있습니다. 이 기사는 이것에 관한 것입니다.

메인 코드



먼저 Python 패키지를 만들어야 합니다. 이름이 log라고 가정해 보겠습니다. 패키지 내부에 Python 파일을 생성합니다(logCapture.py라고 가정). 그런 다음 이 파일에서 logging이라는 Python 패키지를 가져옵니다. import logging 설치 시 Python에 포함되어야 합니다.

그런 다음 클래스를 만들고 그 안에 메서드를 정의할 수 있습니다. 메서드를 정적 메서드로 선언하면 해당 클래스의 개체를 만들지 않고 프로젝트의 어디에서나 메서드에 액세스할 수 있습니다. 그런 다음 아래 제공된 코드를 추가할 수 있습니다.

import logging

class LogGen:
    @staticmethod
    def loggen():
        logger  = logging.getLogger("Test Login")
        fileHandler  = logging.FileHandler('.\\YourDesiredFolderName')
        formatter = logging.Formatter("%(asctime)s :%(levelname)s : %(name)s :%(message)s")
        fileHandler.setFormatter(formatter)
        logger.addHandler(fileHandler)
        logger.setLevel(logging.INFO)
        return logger

`
테스트 케이스의 이름을 getLogger() 메소드 내부의 매개변수로 전달할 수 있습니다. filehandler 클래스는 원하는 로그 위치를 처리합니다. 포맷터 방법은 로그가 적절한 형식에 따라 저장되고 있는지 확인합니다. logger 변수는 실행 종료 시 로그를 반환합니다.

드라이버 코드



이제 loggen() 함수를 사용할 차례입니다. 드라이버 코드를 추가할 다른 Python 파일을 만듭니다. 이 파일 내에서 단순히 이 코드from log.logCapture import logGen를 사용하여 loggen 함수를 가져옵니다. 코드는 기본적으로 이전에 생성한 LogGen 클래스에 액세스하기 위한 것입니다. 그런 다음 logger 변수를 호출하여 로깅을 사용하십시오.

로그인 페이지를 테스트하고 싶다고 가정해 보겠습니다. 따라서 테스트 케이스 실행 직전이나 원하는 위치에 logger.info("You desired massage")를 사용하여 로그를 추가할 수 있습니다. 테스트 케이스를 실행하면 원하는 폴더에 로그 파일이 생성된 것을 볼 수 있습니다. 로그는 다음과 같아야 합니다.



이것은 테스트 사례를 실행한 후 내 로그의 출력입니다. 이것은 내 코드가 이것 뒤에 보이는 방식입니다



이 절차를 따르면 로그를 사용할 수 있습니다 :)

Thanks for reading. Pardon me for the mistakes I may have made as I am new to automation testing and still exploring everyday. I would be glad if it helps anyone. :)

좋은 웹페이지 즐겨찾기