allure-framework / allure-framework/allure-python

Attachments doesnt works with pre-test fixtures

Đang mở
#475 1 bình luận 2 reaction 0 người được giao Xem trên GitHub
bug theme:pytest-bdd
Ngôn ngữ chính
Python
Star
814
Fork
260
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

@pytest.fixture(autouse=True, scope='session')
def configuration(config):
> attach_json_to_report("Config", config)

test\conftest.py:27:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
test\commons\utils\reporting_utils.py:9: in attach_json_to_report
allure.attach(name=name, body=json, attachment_type=allure.attachment_type.JSON)
.venv\lib\site-packages\allure_commons\_allure.py:164: in __call__
plugin_manager.hook.attach_data(body=body, name=name, attachment_type=attachment_type, extension=extension)
.venv\lib\site-packages\allure_pytest_bdd\pytest_bdd_listener.py:118: in attach_data
self.lifecycle.attach_data(uuid4(), body, name=name, attachment_type=attachment_type, extension=extension)
.venv\lib\site-packages\allure_commons\lifecycle.py:146: in attach_data
file_name = self._attach(uuid, name=name, attachment_type=attachment_type, extension=extension)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = , uuid = None, name = 'Config', attachment_type = , extension = 'json'

def _attach(self, uuid, name=None, attachment_type=None, extension=None):
mime_type = attachment_type
extension = extension if extension else 'attach'

if type(attachment_type) is AttachmentType:
extension = attachment_type.extension
mime_type = attachment_type.mime_type

file_name = ATTACHMENT_PATTERN.format(prefix=uuid, ext=extension)
attachment = Attachment(source=file_name, name=name, type=mime_type)
uuid = self._last_item_uuid(item_type=ExecutableItem)
> self._items[uuid].attachments.append(attachment)
E KeyError: None

.venv\lib\site-packages\allure_commons\lifecycle.py:137: KeyError

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu bằng cách tái hiện fixture có phạm vi session trong test/conftest.py và kiểm tra test/commons/utils/reporting_utils.py, đặc biệt là attach_json_to_report. Theo dõi lỗi đã báo cáo xuyên suốt vòng đời của allure_pytest_bdd và allure_commons lifecycle.py. Hoàn thành khi các tệp đính kèm từ các fixture trước khi kiểm thử không còn gây ra KeyError khi không có item thực thi nào đang hoạt động.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
python
Lĩnh vực
testing
Loại issue
Lỗi
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.