Ошибка "AssertionError" в скрипте

Всем привет! Мне необходимо настроить в конце скрипта сравнение "эталонного" текста уведомления с тем что на сайте. В данный момент повляется ошибка "AssertionError: assert 'Payment was succesfull' is True". Не могу понять в чем ошибка и как нужно написать правильно. Сам код:

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait

import pytest


@pytest.fixture(scope="module")
def browser():
    browser = webdriver.Chrome()
    browser.implicitly_wait(5)
    return browser

def test(browser):
    login_link = 'ссылка на сайт'
    browser.get(login_link)

    name_login = 'username'
    name_password = 'password'
    button = 'login-page__submit'

    browser.find_element_by_name(name_login).send_keys('логин')
    browser.find_element_by_class_name(button).click()
    browser.find_element_by_name(name_password).send_keys('пароль')
    browser.find_element_by_class_name(button).click()
    
    time.sleep(2)
    correct_link = 'ссылка на url после авторизации'
    testing_link = browser.current_url
    assert correct_link == testing_link, "Incorrect login"
    
    xpath_test1 = 'сам xpath'
    xpath_test2 = 'сам xpath'
    
    browser.find_element_by_xpath(xpath_test1).click()
    browser.find_element_by_xpath(xpath_test2).click()
    
    
    xpath_plus_test = 'сам xpath'
    xpath_Add_to_cart_test ='сам xpath'
    
    
    xpath_continue='сам xpath'
    time.sleep(1)
    xpath_continue2='сам xpath'
    
    browser.find_element_by_xpath(xpath_plus_test).click()
    browser.find_element_by_xpath(xpath_Add_to_cart_test).click()
    browser.find_element_by_xpath(xpath_continue).click()
    browser.find_element_by_xpath(xpath_continue2).click()
    
    time.sleep(15)
    
    
    class_message="Alert-message"
    browser.find_element_by_class_name(class_message)
    
    true = class_message="Payment was succesfull"
    assert true is True #на этой строке выдаёт ошибку
    assert true is False
  

Ответы (1 шт):

Автор решения: Vladimir Obrizan

Если вы хотите получить текст элемента, то записать нужно концовку вот так:

class_message = "Alert-message"

# Находим элемент по классу и читаем текст элемента.
alert_text = browser.find_element_by_class_name(class_message).text

# Сравниваем текст алерта с ожидаемым.
assert alert_text == "Payment was succesfull"

Последний assert вообще избыточен, он не нужен. Еще обратите внимание: у вас орфографическая ошибка в слове "succesfull", но если на сайте тоже ошибка, то исправлять в тесте не нужно.

→ Ссылка