Уведомления

Группа в Telegram: @pythonsu

#1 Май 19, 2019 18:08:44

Fixx_Jr
Зарегистрирован: 2019-01-30
Сообщения: 31
Репутация: +  0  -
Профиль   Отправить e-mail  

Ошибка TypeError: 'str' object is not callable

пытаюсь сделать автотесты используя Page objects. сайт https://www.abw.by
header.py включает функции и локаторы
test_header.py собственно тесты

тест такой:

    def test_search(self):
        """test search"""
        header_obj = header.Header(self.driver)
        #open search form
        assert header_obj.click_search(), "search form is unavailable"
        #try to search by keyword having not empty results
        header_obj.run_search('renault')
        #check search found specific article
        assert (header_obj.search_results_general() != "true") , 'nothing found, expected several news in results'

локаторы:
         self.search_class = 'icon-search'
        self.search_field = '//div[@class="header-search-block js-search-tabs open-search-block"]//' \
                                  'input[@placeholder="Введите текст для поиска"]'
        self.run_search = 'input[placeholder="Введите текст для поиска"]'
        self.search_res_empty = 'search-page-result__not-found'

фунции

     def click_search(self):
        # click magnifier icon
        self.driver.find_element_by_class_name(self.search_class).click()
        return self.driver.find_element_by_xpath(self.search_field)
    def run_search(self, keyword):
        search_field = self.driver.find_element_by_css_selector(self.search_field)
        search_field.clear()
        search_field.send_keys(keyword)
        search_field.send_keys(Keys.ENTER)
    def search_results_general(self):
        return self.driver.find_element_by_class_name(self.search_res_empty)

ошибка
    File "D:\git\Site_AT\test_header.py", line 52, in test_search
    header_obj.run_search()
TypeError: 'str' object is not callable

не могу разобраться, где я ошибаюсь.
спасибо

Офлайн

#2 Май 20, 2019 11:00:34

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Ошибка TypeError: 'str' object is not callable

У вас видимо банальный конфликт имен

 self.run_search
def run_search(self, keyword):
здесь и атрибут класса и метод имеют одно и тоже имя



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Май 20, 2019 21:00:08

Fixx_Jr
Зарегистрирован: 2019-01-30
Сообщения: 31
Репутация: +  0  -
Профиль   Отправить e-mail  

Ошибка TypeError: 'str' object is not callable

точно!
спасибо

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version