Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

TypeError: 'builtin_function_or_method' object has no attribute '__getitem__'

python
Теги: #<Tag:0x00007f7b69ed0198>

(Ярослав Бойко) #1
def procuringEntity_name(INITIAL_TENDER_DATA,item):
    INITIAL_TENDER_DATA.data.procuringEntity['name'] = u"Повна назва невідомо чого"
    INITIAL_TENDER_DATA.data.items[item].deliveryAddress['region'] = u"Київська"
    INITIAL_TENDER_DATA.data.items[item].deliveryAddress['locality'] = u"Київ"
    return INITIAL_TENDER_DATA

TypeError: 'builtin_function_or_method' object has no attribute '__getitem__'

(Mykhailo Poliarush) #2

Вы даже не потрудились описать, что у вас за проблема, как вы думаете сможет ли кто-то помочь вам?


(Stan) #3

Скорее всего вы где-то обращаетесь к массиву, где его нет, но достаточно сложно понять где именно.


(Ярослав Бойко) #4

ето функция для автоматизованого теста, тест на проверку текста на странице. Пишу на robot framework, selenium, linux


(Mykhailo Poliarush) #5

Нужна полностью ошибка с указанием строки, где есть исключение.

Из того что я вижу, то где-то в этой цепочки нет нужного объекта в нужном состоянии

INITIAL_TENDER_DATA.data.items[item].deliveryAddress['locality'] = u"Київ"

Надо больше информации


(Ярослав Бойко) #6
def test_tender_data(period_interval=2):
  now = datetime.now()
  return {
    "title": u"[ТЕСТУВАННЯ] " + fake.catch_phrase(),
    "mode": "test",
    "submissionMethodDetails": "quick",
    "description": "Test tender1",  #Error @prom when 'Тестовый тендер' 
    "description_en": "Test tender",
    "description_ru": "Тестовый тендер",
    "procuringEntity": {
        "name": fake.company(),
        "name_ru": fake_ru.company(),
        "name_en": fake_en.company(),
        "identifier": {
            "scheme": u"UA-EDR",
            "id": u"0000{}".format(fake.pyint()),
            "uri": fake.image_url(width=None, height=None)
        },
        "address": {
            "countryName": u"Україна",
            "postalCode": fake.postalcode(),
            "region": u"м. Київ",
            "locality": u"м. Київ",
            "streetAddress": fake.street_address()
        },
        "contactPoint": {
            "name": fake.name(),
            "telephone": fake.phone_number()
        }
    },
    "value": {
        "amount": 50000, #Error @prom when float '50000.99' 
        "currency": u"UAH"
    },
    "minimalStep": {
        "amount": 100,   #Error @prom when float '100.1' 
        "currency": u"UAH"
    },
    "items": [
        {
            "description": fake.catch_phrase(),
            "deliveryDate": {
                "endDate": (now + timedelta(days=5)).isoformat()
            },
            "deliveryLocation": {
                "latitude": u"49.8500° N",
                "longitude": u"24.0167° E"
            },
            "deliveryAddress": {
                "countryName": u"Україна",
                "postalCode": fake.postalcode(),
                "region": u"м. Київ",
                "locality": u"м. Київ",
                "streetAddress": fake.street_address()

Часть кода,

"region": u"м. Київ",
 "locality": u"м. Київ",

мне не подходит, потому мне нужно написать отдельно ф-цию чтоб брало етот текст который хочу написать в функции