Перейти к содержимому

Автоматизация функционального тестирования
онлайн, начало 13 декабря
Python для начинающих
онлайн, начало 18 декабря
Погружение в тестирование. Jedi point
онлайн, начало 16 декабря
Школа Тест-Аналитика
онлайн, начало 18 декабря

Публикации LeshaL

81 публикаций создано LeshaL (учитываются публикации только с 15 Декабрь 2018)



#108928 В замешательстве, какую Severity ставить багу

Отправлено автор: LeshaL 22 Август 2012 - 15:16 в Начинающему тестировщику

При выполнении тестового задания самое главное не то как вы проставите северити, а то как вы объясните почему вы поставили такую северити.
Выбираете систему оценок и оцениваете найденные баги, в каких-то местах объясняете почему такая оценка.



#108008 Java Test Harness Developer

Отправлено автор: LeshaL 26 Июль 2012 - 07:48 в Работа/Санкт-Петербург

Привет, коллеги!

В нашей компании (Grid Dynamics) есть замечательная вакансия. Вот она:
http://hh.ru/vacancy/6230836

Некоторые особенности:
- Кандидат должен уметь тестировать.
- Кандидат должен уметь программировать.
- Неплохо знать еще кучу всего (но ведь те, кто умеет и тестировать и программировать и так кучу всего знают, да?).
- В компании Grid Dynamics отличная незабюрократизированная атмосфера.
- У нас классный и высокопрофессиональный коллектив.
- Вас ожидают командировки в США (в данный момент я как раз там, и вот так я работаю, а вот так не работаю :).
- Работать работу надо будет для одной весьма и весьма известной компании.
- Честно говоря я и сам бы пошел на эту вакансию, но уже работаю в Grid Dynamics (боюсь не отпустят :).

В качестве резюме: если вы профессионал, и если вы устали на предыдущем месте работы или устали от вялотекущей работы, то у нас вам самое место! Скучно не будет, обещаю.

PS: и да, конечно же у нас есть заманчивые вакансии и на других проектах и для специалистов в других областях: http://hh.ru/employer/802184

Присылайте резюме или мне в личку или через HH.



#107093 Мотивация нового сотрудника

Отправлено автор: LeshaL 25 Июнь 2012 - 21:40 в Про тестирование обо всём подряд

Это у вас человек на первый-второй день так работает? Тогда самое время признать свою ошибку и исправить её. То есть уволить этого сотрудника. Если, конечно, вы всё адекватно описали. В любом случае выглядит так, что вы совершаете ошибки, уж извините.

Поддерживаю. Желание из такого сделать конфетку ни к чему хорошему не приведет. Вы либо его уволите позже, когда все с ним намучаются. А чем дальше, тем сложнее будет уволить, будет жалко потраченных сил и тд. Либо он достанется кому-нибудь другому (в другой отдел, или вы уйдете, например на повышение итд). Уж поверьте, добрым словом по поводу такого работника вас поминать не станут.
А если есть команда, то за все косяки данного сотрудника придется расплачиваться членам команды - доделывать за него, тратить время на объяснения (в пустую, как понимаю) и тд.



#107092 QA engineer в компанию Oracle

Отправлено автор: LeshaL 25 Июнь 2012 - 21:25 в Работа/Санкт-Петербург

вакансия еще актуальна?

Т.к. я в компании не работаю - то не знаю. Завтра спрошу. Последний раз когда общался (около 3х недель назад), сказали что есть кандидаты на примете, но вакансия не закрыта еще.
Если не напишу завтра - пинганите, плиз, в личке (это чтобы я письмо получил).



#107091 Тестировщик и фриланс (или удаленная работа)

Отправлено автор: LeshaL 25 Июнь 2012 - 21:19 в Личный рост, карьера, развитие

Когда-то сам копал в эту сторону и пришел к выводу, что оно того не стоит. Почти везде, где нужно серьёзное тестирование (и как следствие приличные зп) невозможно впринципе тестировать из дома.

Неправда ваша. У меня среди знакомых есть обратные примеры.



#107088 Linux/*nix знания для тестировщика

Отправлено автор: LeshaL 25 Июнь 2012 - 20:51 в Обучение тестировщиков ПО

Здравствуйте, уважаемые форумчане!

Хочу узнать, что входит в понятие "знание Linux/*nix". Например, знание bash-a, уметь написать простой скрипт, знание базовых комманд, умение работать без графической оболочки (только с консолью), умение собрать программу и так далее.
Если можно, поделитесь мыслями с указанием "уровня" знания (знание простейших комманд - beginner level, написать скрипт - intermediate, пересобрать ядро - advanced).

Так же интересно какие таски в этой ОС чаще всего приходилось делать, расскажите о вашем опыте.

В конце хочу составить для себя эдакий список-чеклист того, что надо выучить.

Также посоветуйте дистрибутив годный для учебы - я ставил убунту, но не знаю насколько она "близка" к боевым машинам, с которыми приходится работать тестировщикам.

Начну с конца - тестировщикам "приходится" работать на разных операционках с разными настройками - ведь все зависит от того, как надо тестировать приложение. У нас, например, нет жестких требований по окружению, но корпоративный стандарт - убунта (хотя у меня openSuse).

Теперь о том, что делать - работать приходилось чаще всего. Собственно для этого и нужна операционка.
Поэтому, для начального уровня вам надо научиться устанавливать систему (с обычными "дружелюбными" дистрибутивами это не сложнее чем установка виндов). Научиться работать в системе (с консолью или без - решать только вам). Считайте это начальным уровнем.
Если вы захотите работать быстрее и удобнее (а если линукс это ваша единственная операционка - то это желание придет достаточно быстро), то вы волей-неволей начнете писать скрипты, использовать консоль, научитесь компилировать программы, которых нет в пакетах (обычно они компилируются достаточно легко и все это выглядит страшно только на первый взгляд). Считайте это уже более продвинутым уровнем.
Еще более продвинутым уровнем можно считать, когда вы научитесь настраивать свою машину таким образом, что сможете зайти на нее с любого другого компа по ssh и сделать в консоли все то, что могли бы сделать сидя за ней.

А ядро вам не придется пересобирать (если вы конечно не выберете какой-нибудь gentoo). Людям которым нужно "ехать" это ни к чему, ну а тем кому "шашешчки"...

Могу книгу порекоммендовать - http://www.books.ru/...ruzhenie-82361/
До середины - маст рид.



#107087 Linux/*nix знания для тестировщика

Отправлено автор: LeshaL 25 Июнь 2012 - 20:29 в Обучение тестировщиков ПО

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

Сомневаюсь :) Люди занимающиеся подбором персонала обычно, в лучшем случае, знают что линукс существует и как-то используется в компании.

2) Научиться работать в консоли можно и в убунте. Просто забудьте, что есть графические конфигураторы, файловые менеджеры и центр установки приложений. Открывайте терминал и пытайтесь делать всё там. Убунта обладает тем преимуществом, что на начальном этапе помогает сберечь нервы и не способствует возникновению антипатии к ОСи.

Вот с этим могу поспорить. Убунта - УГ и вообще бажное УГ. И нервы попортить она как раз может больше чем другие дистры. Я предпочитаю openSuse.


3) Имхо, знание базовых команд не сильно отличается от умения написать скрипт для bash. Скрипт тоже может быть на "базовом" уровне. А вот поднабрать арсенал полезных утилит и опций можно только на практике: почитайте man даже по самым простым командам и убедитесь, что без опыта всё это множество опций освоить нереально.

Абсолютно точно, полностью поддерживаю этот комментарий. Хотите научиться - перебирайтесь на линукс и работайте в нем, если это не критично для тестируемого приложения (ну или пускайте его в виртуалке, если виндовое). Есть рецепт перелезания на линукс, которым я сам и воспольовался - сначала на виндах перейти на кросплатформенные продукты (мс офис - libre office, почтовик - thunderbird итд.) Единственно - нет замены Far-у (есть mc, но это отстой).



#107086 Помогите сделать красиво

Отправлено автор: LeshaL 25 Июнь 2012 - 20:13 в Selenium - Functional Testing

Здравствуйте.
Решил использовать "по науке" pageobject и столкнулся с проблемой. Есть у меня отдельно класс какой-либо страницы и класс проверок. Отдельно конечно же существует класс с тест-кейсами и вот тут-то у меня загвоздка, наверное, от плохого знания Явы. Так вот проблема в следующем.
MainWindow mainwndw = new MainWindow(driveк)
mainwndw.buttonclick(mainwndw.submit);

В константах у класса страниц хранятся xpath к элементам на этих страницах, а как же тогда к ним обращаться из тест-кейсов и проверок, неужели только через mainwndw.submit? Нельзя ли это сделать красивей как-то? Спасибо.

Не очень понятно в чем вопрос. Напишите, что вы хотите сделать. Что такое MainWindow?
Почитайте про PageFactory - на мой взгляд использование PageObject без PageFactory - это полумера.
PS: и еще, хоть к делу не относится, почитайте про java code style и название локальных переменных. mainwndw это не по джавовски.



#106125 Перспективы работы в Петербурге

Отправлено автор: LeshaL 31 Май 2012 - 07:30 в Личный рост, карьера, развитие

Добрый день!
На сегодняшний день подсчеты приблизительно такие: человеку с опытом от года можно устроиться на работу в тестирование на зп от 35-40тр, если с умением автоматизировать, то начальная планка будет на 5-10тр больше.
Квартиру не в центре и не самую лучшую, но нормальную можно снять за 18-20тр (с учетом ком. платежей). +2тр на дорогу.
Итого остается порядка 15+тр на жизнь.
Что будет через год не известно.

Если у вас есть склонность к программированию, то изучайте джаву и селениум. Знание скриптового языка типа ruby|python|groovy тоже будет плюсом. Если будет опыт работы с SQL, то тоже востребованно. А вообще - почитайте вакансии на spb.hh.ru - какие там требования к технологиям чаще встречаются.
Если с программированием не очень, то такие вещи как HTML, XML знать надо. Неплохо знать разные операционки - винда/линукс и какие-то навыки написания скриптов (batch|shell).
В целом, учитесь дизайнить тесты, взаимодействовать с программистами и оформлять дефекты.



#105390 Лайза Криспин. Гибкое тестирование.

Отправлено автор: LeshaL 11 Май 2012 - 21:25 в Литература по тестированию ПО

Внимание, халтура!


Книга плохая. Она не стоит времени, потраченного не нее.
Огромное количество грубых ошибок как авторов, так и переводчиков.

Примеры ошибок.
* Первое предложение части IV "Автоматизация": "Автоматизация тестов - основная практика гибкой методологии". Минимум два заблуждения в одном предложении.
* На той же странице еще много заблуждений от авторов, но вот пример перлов от переводчиков: "Тема автоматизации также является весьма обширной. Она включает такие задачи, как написание простых сценариев оболочки, установка свойств сеансов и создание устойчивых автоматизированных тестов." Что хотели сказать то?

Резюме: потратьте деньги и время на что нибудь приличное.

Оригинал:

Test automation is a core agile practice. Agile projects depend on automation.
Good-enough automation frees the team to deliver high-quality code frequently.
It provides a framework that lets the team maximize its velocity while
maintaining a high standard. Source code control, automated builds and test
suites, deployment, monitoring, and a variety of scripts and tools eliminate
tedium, ensure reliability, and allow the team to do its best work at all times.

Automation is also a vast topic. It includes tasks like writing simple shell
scripts, setting up session properties, and creating robust automated tests.
The range and number of automated tools seem to grow exponentially as we
learn about better ways to produce software. Happily, the number of excellent
books that teach ways to automate appears to grow just as fast.

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



#105386 findElement или findElements?

Отправлено автор: LeshaL 11 Май 2012 - 18:28 в Selenium - Functional Testing


Если не секрет, с чем связано стремление использовать именно findElements?

Это связано с большей гибкостью findElements и, как оказалось, большей скоростью ее работы - некоторые тесты начали падать из-за того, что webdriver начал отрабатывать быстрее чем функционал проекта в местах, где использовалось неправильные ожидания.

Наверное, дело все-таки в том, что findElements удовлетворяется если ничего не найдено, а findElement ждет в течение времени заданного в ImplicitWait пока не появится элемент и затем только падает.



#105228 Тюнинг firefox

Отправлено автор: LeshaL 05 Май 2012 - 20:48 в Selenium - Functional Testing

1) Уменьшить кол-во тестов, чтобы они проходили за час. Сделать разбивку на тестовые наборы. Остальные тесты, которые не успевают пройти за час запускать отдельно. Например ночью.
2) Использовать Хром. По моим ощущениям он самый быстрый.
3) Уменьшить количество перестартовок браузера, если таковые есть.
4) Уменьшить размер базы, гонять "часовые" тесты на эталонных данных. Тесты на расширенном наборе данных запускать ночью.
5) Избавиться от дублирующихся тестов, если таковые есть. Убрать большинство негативных проверок в другой тестовый набор.
6) Переиспользовать данные, созданные другими тестами, если они удовлетворяют условиям, но не полагаться на то, что они там уже есть.
7) Отказаться в большинстве тестов от селениума и тестировать не через UI.



#105198 поиск битых ссылок

Отправлено автор: LeshaL 04 Май 2012 - 21:50 в Автоматизированное тестирование



сам искал такое.
Если найдете, сообщите пожалуйста.

Ничего вы не искали.
Вот пример поиска: http://software-test...ch&fromsearch=1
А вот то, что я рекомендую, чем пользовался 7 лет: http://software-test...ch&fromsearch=1 (но есть недостатки).
Ну и конечно есть linkchecker который мне же на этом форуме и посоветовали.

Ок. Спасибо. Только поправьте первые две ссылки.
Linklint - не староват? как понимаю, вы им пользуетесь?
A xenu хорошь тем, что в virtualbox работает с куками IE, а у нас внутренние порталы с авторизацией.

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

linklint староват. Сейчас уже ничем не пользуюсь, но для наших целей на прошлой моей работе его хватало (API Javadoc тестировать). У нас его кто-то немного допиливал самостоятельно и много он не умеет (например https). Смотря для чего надо.

А linkchecker поумнее.



#105197 запуск отдельной JUnit тест-функции из консоли

Отправлено автор: LeshaL 04 Май 2012 - 21:43 в Автоматизированное тестирование

Ну ещё можно с ant'ом побаловаться и реализовать такую возможность:)

В анте используется "ихняя" реализация тест-раннера. Чтобы его поменять надо написать свой тест-раннер. Т.е. см. мой предыдущий ответ. В IDE, которое тоже реализовывает свой раннер, на самом деле перебираются все методы класса, но только все кроме выбранного не запускаются. Так 4й Junit устроен.

На самом деле в Junit-e есть возможность запускать тесты на основе селекции по аннотациям. Я не пробовал, но вроде бы для этого надо создавать отдельный тест-свит(могу наврать). Как я понял идею, например есть три теста, один с аннотацией @A, другой с @B, а третий с @A и @B. Создаем 2 тест-свита - первый для @А, второй для @B. Итого в первом наборе будут тесты 1 и 3, во втором 2 и 3.



#105195 поиск битых ссылок

Отправлено автор: LeshaL 04 Май 2012 - 21:03 в Автоматизированное тестирование

Xenu's Link Sleuth

это хорошее средство. но надо такое, которое можно было бы запускать из консоли на линуксе

чем обусловлено требование из консоли на линуксе? Почему нельзя воспользоваться виндовой виртуалкой?
Из консоли на линуксе хорошо запускается wget+grep

А что найдет wget + grep? Даже если рекурсивно wget запускать и потом анализировать коды ответа (хотя тут grep-а явно не хватит), то он битые ссылки внутри документа все-равно не найдет.



#105194 поиск битых ссылок

Отправлено автор: LeshaL 04 Май 2012 - 20:58 в Автоматизированное тестирование

сам искал такое.
Если найдете, сообщите пожалуйста.

Ничего вы не искали.
Вот например поищите на этом форуме по словам "проверка ссылок".
А вот то, что я рекомендую, чем пользовался 7 лет: linklint (но есть недостатки).
Ну и конечно есть linkchecker который мне же на этом форуме и посоветовали.



#105131 Как поставить на Ubuntu и запустить

Отправлено автор: LeshaL 03 Май 2012 - 19:23 в Selenium - Functional Testing

Добрый день, уважаемые тестировщики!)

Отправте или напишите, пожалуйста, пошаговую инструкцию по установке Selenium под Убунту и запуску первого теста на python(например, для популярного поисковика).

А чем вас не устраивает описание из официальной документации?
http://selenium2.ru/....html#webdriver
Есть команда, которую надо запустить для установки (на питоне) и есть маленький скрипт для этого же языка.
Убунта или неубунта - селениуму наплевать.



#105130 запуск отдельной JUnit тест-функции из консоли

Отправлено автор: LeshaL 03 Май 2012 - 19:15 в Автоматизированное тестирование

Как запустить отдельную тестовую функцию JUnit4 из консоли?
...
С помощью java -cp org.junit.runner.JUnitCore [имена тест-классов] можно запускать классы целиком (все функции помеченные @Test), а вот как запустить отдельную тест-функцию? Например, myTest.qwer() из примера?

Никак. Надо свой тест раннер писать. Или, если в отладочных целях, то можно закоментить ненужные анотации @Test.



#105024 SQA Days 11 Слайды презентаций

Отправлено автор: LeshaL 29 Апрель 2012 - 18:05 в SQA Days 11

Может, пока готовится официальная выкладка презентаций/видео, докладчики поделятся своими слайдами здесь?

Я бы вот очень хотела бы получить презентацию двух Сергеев, распечатать себе "Тестировщик, не ной!" :friends:

Сделал слайдкаст своего секретного доклада на конференции SQA Days 11. Слайдшара ухитрилась испортить некоторые слайды, но не критично: http://www.slideshar...haL/ss-12710814

Звук взят из видео, за которое огромное спасибо Стасу Фомину. Видео моего выступления тут:



#104872 Процесс найма сотрудника со стороны работодателя

Отправлено автор: LeshaL 25 Апрель 2012 - 21:22 в Про тестирование обо всём подряд

Добрый день!
Во-первых, хочу поддержать ребят, которые говорят о том, что тестовое задание надо давать хотя бы после интервью, а не до него. Причин несколько, думаю они будут понятны из написанного ниже. Я бы предложил такую схему:
Изучение резюме и телефонный скрининг (для определения того, что человек хочет выполнять предлагаемую работу в принципе) -> техническое собеседование (лучше когда несколько человек, всей командой не обязательно, не все любят) -> тестовое задание (опционально, в них есть несомненные плюсы) -> второе интервью для определения условий итд (желательно с руководством) -> офер (для победителя).

Во-вторых, можете посмотреть видео моего недавнего выступления о том как я работу менял. Взгляд соискателя:

В-третьих. 2-3 дня на такое тестовое задание абсолютно нормальный срок (это для тех, кто что-то подозрительное тут увидел). Не забывайте, что кандидат может иметь работу, на которой у него есть задачи, другие интервью и тестовые задания, семью итд. А лучше всего спросить самого кандидата за сколько он сможет сделать задание. Это тоже показатель.



#104480 QA engineer в компанию Oracle

Отправлено автор: LeshaL 18 Апрель 2012 - 13:45 в Работа/Санкт-Петербург

Чего-то пока из Питера никто не откликнулся. Только из других городов. Кстати, сразу скажу, что компания не оплачивает relocation.
А уже завтра начинаются первые собеседования.
А вы знаете, что новый работник в компании Оракл может рассчитывать на примерно вот такой рабочий комп http://spb.onno.ru/ru/witem/21395/ (только памяти побольше). Ну ли на аналогичный ноут бизнесс класса от некоторых других производителей.



#104279 Как сделать, чтобы tearDown не закрывал браузер после каждого теста

Отправлено автор: LeshaL 16 Апрель 2012 - 13:16 в Selenium - Functional Testing


TestNG или JUnit юзаете?

JUnit

Junit 3.x или 4.x?

Для 4го Junit я гасил браузер через ShutDown hook, инициализировал драйвер перед самым первым тестом, если он еще не инициализирован.
Ну естественно в tearDown остается разлогинивание, а в setUp - логин (как-то так, у меня на самом деле логин выполнялся в базовом классе при инициализации тестового класса).

В третьем Junit должно быть проще реализовать акции которые делаются один раз перед всеми тестами и после окончания. Но я не делал.



#104238 HtmlUnit и mozillaFirefox

Отправлено автор: LeshaL 15 Апрель 2012 - 19:42 в Selenium - Functional Testing

Народ, подскажите пожалуйста, может кто сталкивался с этой бедой? Реально нужно реализовать эту функцию, но ничего не выходит. Была версия что это какие-то сложные javaScript, но я так не думаю, другие подобные функции реализуются, а эта никак не хочет

JavaScript скорее всего. Сложный не нужен. Нужен какой-то, который мешает работать HTMLUnitDriver-у. Может быть всё что угодно. Без анализа страницы, на которой происходит, никто вам не поможет. А может и с ним тоже. Я когда пытался его прикрутить правил безобидный JS на некоторых страницах, иначе напрочь зависал. Но потом мы от него отказались ибо он то падал, то не работал.
Кстати, раньше надо было JavaScript явным образом включать в HtmlUnitDriver-e. В вашем коде этого нет.



#104140 QA engineer в компанию Oracle

Отправлено автор: LeshaL 12 Апрель 2012 - 21:54 в Работа/Санкт-Петербург

Коллеги, в связи с тем, что я меняю место работы - на моем пока еще текущем месте (в компании Oracle Development Spb) появилась вакансия.

Что я могу обещать кандидату:
- Работу в известной, престижной и стабильной фирме.
- Лучшее соотношение зп, соцпакета и условий работы в Питере (по нынешнему опыту собеседований).
- Работу в профессиональном коллективе (команда в Питере [сейчас 11 чел] существует с 2005 года, с тех пор никого не брали). Некоторые работают чуть ли не с появления языка Java.
- Одного из самых лучших начальников с которыми мне приходилось работать.
- Работу над созданием языка Java (в области JavaME).
- Возможность набраться опыта и изучить множество различных технологий.
- Отсутствие переработок и сбалансированный график релизов.

Что надо от кандидата:
- Небольшой опыт в тестировании (или программировании), от года (я пришел на такую позицию с 4-х летним опытом, если что, но новенького хватило на несколько лет).
- Знание английского - уверенное читать/писать, бла-бла чем лучше, тем лучше (рабочая переписка на английском, есть коллеги в США, возможны рабочие митинги на английском).
- Умение связать пару слов на Java (не надо быть программистом, но знать язык на некотором уровне обязательно).
- Знание различных операционок и скриптописание будет большим плюсом.
- Умение врубаться в новые технологии и самостоятельно их изучать.

Просьба не беспокоить если:
- вы хотите заниматься исключительно ручным тестированием.
- вы не умеете работать самостоятельно или в тесном контакте с программистами.
- вы думаете, что баги в продукте это хорошо.
- вы хотите на синьорскую позицию.
- вы хотите быстрого карьерного роста.
- вы планируете надолго не задерживаться на одном месте.

Оракл корпорация большая, для ускорения процесса пишите мне в личку или на почту budabum @ gmail com
Обещаю, что все присланные резюме я переправлю своим бывшим коллегам. Вопросы "почему меня [ещё] не позвали" итд. не принимаются.
Готов ответить на вопросы относительно рабочих обязанностей и тд. Про деньги НЕ спрашивать! Во-первых я не знаю сколько. Во-вторых, не меньше, чем в других фирмах в Питере. Просите столько, сколько вы думаете, что вы стоите и если вы этого стоите - вам это дадут.

Далее официальное описание.
Скрытый текст



#103993 пересылка кода подтверждения на телефон

Отправлено автор: LeshaL 11 Апрель 2012 - 14:10 в Selenium - Functional Testing

спасибо большое за ответы! Вчера программистов уже спрашивала, но они не очень охотно хотят помогать... Пойду-ка надавлю на них пожалуй =)))
потом отпишусь о результатах.

Как понимаю вам нужны существующие пользователи для проведения автоматизированного тестирования, а не возможность автоматизации проверки создания новых пользователей. Создание нового пользователя (регистрацию) можно и руками проверить, не думаю, что это каждый день надо.

А пользователей для тестирования вы можете создать прямо в базе, даже не вспоминая не про какие эти коды регистрации.
Другой вариант, создать руками несколько пользователей и потом использовать их при автоматизированном тестировании, но я бы стал это рассматривать как промежуточный вариант на скорую руку. Все-таки создавать прямо в базе намного лучше, да и не сложно.




Яндекс.Метрика
Реклама на портале