Использование приспособления Pytest для скриншота (определено в conftest.py ) и используется с в методе в структуре класса

#python #pytest #reportportal

#python #pytest #reportportal

Вопрос:

Определенный прибор pytest (имена как rp_logger) в conftest.py файл и пытается использовать в методе в другом классе как rp_logger.info («»). Выдается сообщение об ошибке, что информация об атрибуте не определена.

файл conftest:

 @pytest.fixture
def rp_logger(request):
    # Setting up a logging.
    logging.setLoggerClass(RPLogger)
    logger = logging.getLogger(__name__)
    logger.setLevel(logging.DEBUG)
    # Create handler for Report Portal.
    rp_handler = RPLogHandler(request.node.config.py_test_service)
    # Set INFO level for Report Portal handler.
    rp_handler.setLevel(logging.INFO)
    return logger
  

файл testsuite:

 @pytest.mark.single
@pytest.mark.events
@pytest.mark.usefixtures("rp_logger")
class MyTest(object):
    def test_verify_events_page(self, rp_logger):
        rp_logger.info("bbbb")
  

Ошибка трассировки стека :

 def run(self, result=None):
    orig_result = result
    if result is None:
        result = self.defaultTestResult()
        startTestRun = getattr(result, 'startTestRun', None)
        if startTestRun is not None:
            startTestRun()

    self._resultForDoCleanups = result
    result.startTest(self)

    testMethod = getattr(self, self._testMethodName)
    if (getattr(self.__class__, "__unittest_skip__", False) or
        getattr(testMethod, "__unittest_skip__", False)):
        # If the class or method was skipped.
        try:
            skip_why = (getattr(self.__class__, '__unittest_skip_why__', '')
                        or getattr(testMethod, '__unittest_skip_why__', ''))
            self._addSkip(result, skip_why)
        finally:
            result.stopTest(self)
        return
    try:
        success = False
        try:
            self.setUp()
        except SkipTest as e:
            self._addSkip(result, str(e))
        except KeyboardInterrupt:
            raise
        except:
            result.addError(self, sys.exc_info())
        else:
            try:
  
               testMethod()
  

Ошибка E TypeError: test_verify_events_page() принимает ровно 2 аргумента (1 задан)

Комментарии:

1. Также предоставьте обратную трассировку ошибок.

2. обновлена обратная трассировка.