Не возвращается значение из фикстуры

SmallMuke

Новичок
Пользователь
Окт 6, 2023
15
0
1
Есть задача - получить значение из текстового поля
Написал для теста простой код
Python:
import allure
import pytest
import time
import pyperclip
import win32com.client

from selenium.webdriver.common.by import By

@pytest.fixture()
def copy_text(selenium):
    @allure.step('Копирование текста в поле')
    def cqp(element):
        selenium.find_element(By.XPATH, element).click()
        shell = win32com.client.Dispatch('WScript.Shell')
        shell.SendKeys('^a')
        shell.SendKeys('^c')
        time.sleep(1)
        return pyperclip.paste()

class Test_entry_field:
    def test_google(self, selenium, copy_text):
        selenium.get('https://www.google.ru/search?q=ozon&newwindow=1&sca_esv=572714518&source=hp&ei=hjonZdK3JoSVseMP4ZexiAg&iflsig=AO6bgOgAAAAAZSdIliZFOIJGIDT1BkRlSowa-egHKj36&gs_ssp=eJzj4tLP1TcwMivPqTJXYDRgdGDwYsmvys8DAEA0BbI&oq=Ozon&gs_lp=Egdnd3Mtd2l6IgRPem9uKgIIADINEC4YigUYxwEY0QMYQzIHEAAYigUYQzIHEAAYigUYQzIFEAAYgAQyBRAAGIAEMgsQLhivARjHARiABDIFEAAYgAQyBRAAGIAEMgUQABiABDIFEAAYgARIjDdQAFjjH3ACeACQAQCYAWugAdYEqgEDMi40uAEByAEA-AEBqAIAwgIFEC4YgATCAgsQLhiABBjHARjRA8ICCxAuGIAEGMcBGK8BwgIUEC4YgAQYxwEYrwEYmAUYngUYmQXCAgcQLhiKBRhD&sclient=gws-wiz')
        time.sleep(1)
        text_in_field = copy_text('//*[@name="q"]')
        time.sleep(2)

При запуске выдает ошибку

text_in_field = copy_text('//*[@name="q"]')
E TypeError: 'NoneType' object is not callable

Не могу понять что не так с моей фикстурой copy_text?
 

PYDEV

Пользователь
Пользователь
Авг 31, 2023
72
18
8
Попробуй добавить в свой класс дандер метод __call__
 

robisho

Активный пользователь
Пользователь
Окт 19, 2020
151
26
28
что такое аргумент selenium в функции copy_text? сдается мне, что это не строка.... и зачем городить функцию в функции, если вы не разобрались в этом? return cqp(element) нужно сделать в функции copy_text(selenuim).

 
Последнее редактирование:

SmallMuke

Новичок
Пользователь
Окт 6, 2023
15
0
1
Всем спасибо за ответы, разобрался :)
 

Форум IT Специалистов