Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
43 / 13 / 1
Регистрация: 20.08.2012
Сообщений: 788

Автоматизированное тестирование selenium

28.04.2020, 17:46. Показов 2268. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Прохожу курс и там было 2 примера на основе которых решил новую задачку и не совсем понял одну мелочь. Все остальное понятно.
Обычно в функцию передаются параметры с которыми работаем и которые где то используем и я так и делаю передаю в функцию def test_case(self, number, browser): два параметра которые я там использую number и browser. Мне больше ничего не нужно, но ide мне подсказывает что нужно в начале еще одну переменную написать self, да с помощью нее можно связать несколько тестов в этом классе, но в данном случае у меня в классе один тест, почему без self не работает?

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
from selenium.webdriver.common.by import By
from selenium import webdriver
import time
import math
import pytest
 
@pytest.fixture(scope="class")
def browser():
    browser = webdriver.Chrome()
    browser.implicitly_wait(6)
    yield browser
    browser.quit()
    return browser
 
@pytest.mark.parametrize('number', ["236895", "236896", "236897", "236898", "236899", "236903", "236904", "236905"])
class TestMain():
    def test_case(self, number, browser):
        link = f"https://68568/lesson/{number}/step/1"
        browser.get(link)
        answer = str(math.log(int(time.time())))
        browser.find_element(By.CSS_SELECTOR, 'textarea').send_keys(answer)
        browser.find_element(By.CSS_SELECTOR, "button.submit-submission").click()
        message = browser.find_element(By.CSS_SELECTOR, "pre.smart-hints__hint").text
        if message != "Correct!":
            print(message)
        assert "Correct!" == message
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.04.2020, 17:46
Ответы с готовыми решениями:

Автоматизированное тестирование функций вываливает ошибку
Всем привет! Цитирую автора: А вот у меня выводит: File "D:\python\exercises\otdeln.py", line 4, in __main__.func_m Failed...

Автоматизированное тестирование Selenium Webdriver+Java. Ошибка после метода element.clear()
Всем привет! Очень долго не могу понять в чем проблема. Пишу автоматизированный тест для сайта доставки еды. Когда происходит переход на...

Unit -тестирование или автоматизированное тестирование
Доброго времени суток. Я программирую «для себя» второй год, на выходе получаются разного рода приложения от постоянно подающих с...

7
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
28.04.2020, 22:30
Цитата Сообщение от ArxangelXA Посмотреть сообщение
почему без self не работает?
Может быть потому что функция test_case вовсе не функция, а метод? Метод это функция чьим первым параметром всегда передается ссылка на экземпляр класса чьим методом является данная функция.
1
43 / 13 / 1
Регистрация: 20.08.2012
Сообщений: 788
29.04.2020, 14:29  [ТС]
Garry Galler, Спасибо) Я изучал только введение в python и теперь понял, что я много чего не знаю(( Я смутно понял что вы написали, но точно понял что это не функция и что мне нужно поизучать.
0
Модератор
Эксперт Python
 Аватар для Fudthhh
2695 / 1601 / 513
Регистрация: 21.02.2017
Сообщений: 4,210
Записей в блоге: 1
29.04.2020, 14:45
Лучший ответ Сообщение было отмечено ArxangelXA как решение

Решение

ArxangelXA,

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
def procedure(x: int, y: int):
    print(x + y)
 
 
def function(x: int, y: int) -> int:
    return x + y
 
 
class MY_CLASS:
 
    def __init__(self, x: int, y: int):
        self.x, self.y = x, y
 
    def method(self) -> int:
        return self.x + self.y
 
 
procedure(10, 20)
 
print(function(30, 40))
 
my_class = MY_CLASS(50, 60)
print(my_class.method())
Добавлено через 3 минуты
Считай что класс, это контейнер который хранит в себе какие то атрибуты, а если у него есть методы, то в каждый метод передается ссылка на экземпляр класса, чтобы можно было использовать атрибуты этого экземпляра.
1
43 / 13 / 1
Регистрация: 20.08.2012
Сообщений: 788
29.04.2020, 15:01  [ТС]
DmFat, Теперь понятно. Только еще вопрос это основы ООП? В введений не было про это ничего наверно это в ООП, да?
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
29.04.2020, 15:10
Цитата Сообщение от ArxangelXA Посмотреть сообщение
это основы ООП?
Да.
Цитата Сообщение от ArxangelXA Посмотреть сообщение
В введений не было про это ничего
Интересно, каким образом тогда был написан код в первом посте? А, ну да - методом великого копипаста.
1
29.04.2020, 15:15

Не по теме:

Garry Galler, эти онлайн курсы все лучше и лучше, жду когда они с первого занятия начнут писать "искусственные интеллекты" и ботов для телеграмм... Хотя, стоп, на счет ботов я уже видел темы.

0
43 / 13 / 1
Регистрация: 20.08.2012
Сообщений: 788
29.04.2020, 15:25  [ТС]
Цитата Сообщение от Garry Galler Посмотреть сообщение
Интересно, каким образом тогда был написан код в первом посте? А, ну да - методом великого копипаста.
Все просто я примерно понимаю что там написано и даже сам смогу написать, но большая часть по принципу тут должно быть так, а почем?? а не знай так было в уроке, но точно знаю что так будет работать) Так плохо, но пока так. А вообще я курс прохожу по автоматизированному тестированию и там не рассказывается про сам язык, но есть примеры которые можно переделать и получить результат. В итоге что основано на базе могу переделать и что то свое добавить, а что вот с ооп и чем то больше базы тут все по примерам, библиотекам и как то примерно ((( Надо изучать.
Спасибо)

Добавлено через 4 минуты
DmFat,

Не по теме:

Не был бы так строг к курсам, там предупреждают что перед этим курсом нужно еще изучить основы +. А про ботов да было такое))

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.04.2020, 15:25
Помогаю со студенческими работами здесь

Автоматизированное тестирование ПО
Доброго времени суток! Даже незнаю, в правильный ли раздел форума обращаюсь...Есть ли здесь информация, про автоматизированное тестирование...

Автоматизированное тестирование
Можете помочь с автоматизированным тестированием? У меня есть подсистема Информация, в ней лежит справочник Пациенты. Написал вот такой...

Автоматизированное тестирование и разработка ПО
Здравствуйте я из области далекой от создания ИТ проектов и меня интересует вопрос: Чем отличается вакансия специалиста по...

Автоматизированное тестирование Eclipse
Здравсвуйте, подскажите пожалуйста, создаем автоматические тесты в среде Eclipse. Есть следующий фрагмент кода: ...

Разработчики на автоматизированное тестирование ПО, (Ижевск, Удмуртия)
Компания Performance Lab (филиал в городе Ижевск), ведущий поставщик услуг в области функционального,автоматизированного и нагрузочного...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды "Заполнить" и "Очистить" на форме документа
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". На примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных выбран регистр накопления, в. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru