Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Отслеживание сессии пользователя



Software-Testing.Ru - портал тестировщиков  

Новые темы форума тестировщиков


Отслеживание сессии пользователя
2011-10-21 12:06
Здравствуйте!
Возникала следующая проблема. После авторизации пользователь "гуляет" в личном кабинете, а потом при запросе какой нибудь страницы(страницы всегда разные) пользователь вылетает из лк на главную страницу(отвалилась сессия). Можно ли как нибудь постоянно отслеживать что пользователь еще находится в своём личном кабинете? А если вдруг случилось что его выкинуло, то блокировать этого юзера и записывать его логин в лог.
Можно ли это реализовать?


Джедай нагрузочного тестирования
2011-10-21 12:13
Джедай нагрузочного тестирования

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

Джедай нагрузочного тестирования при помощи Силы будет создавать модели галактик и их обитателей, принимающих наши сигналы. Благодаря его работе мы будем точно знать, что наша Платформа умеет вещать сразу на все доступные и недоступные галактики обозримой Вселенной.
Обязанности включают в себя нагрузочное тестирование веб-сервисов, раздающих медиа контент или (по вкусу) нагрузочное тестирование сайтиков, поисковых движков, API, медиа-сервера

Требования:

· опыт нагрузочного тестирования;
· знание Linux;
· опыт работы с системами виртуализации;
· плюсом будет опыт тестирования приложений со сложным медиа-контентом (видео, музыка, картинки);
· плюсом будет знание Ruby.

Общие требования:

· опыт локализация ошибок и составления понятных дефект-репортов;
· нацеленность на результат;
· уважительное отношение к разработчикам;
· приятность в общении и чувство юмора;
· любовь к шоколадкам «Красного Октября».

Мы предлагаем массу ништяков:

· персонализированная чашка для кофе для тех кто пишет на Ruby;
· офис на «Красном Октябре» (ст. м. «Кропоткинская», «Полянка» или «Третьяковская»);
· рабочее место с двумя мониторами, Mac OS X, Linux или Windows на выбор;
· опытный коллектив, где можно расти над собой в профессиональном плане;
· мягкий офисный график (11:00-19:30);
· соблюдение требований Трудового Кодекса;
· бесплатные обеды в собственном Прогресс баре;
· зарплата растет в соответствии с вашими достижениями и выплачивается без задержек и опозданий;
· тренажерный зал с собственным тренером (а также сауна и солярий);
· практически отсутствуют телесные наказания;
· помощь при переезде в Москву.

В качестве базовой ставки мы называем 90000 тыр., эту цифру можно обсуждать.

Присылайте, пожалуйста, письма на hr@undev.ru.

Гениальный механик автоматизированного тестирования
2011-10-21 12:17
Гениальный механик автоматизированного тестирования

Некоторые узлы нашего звездолета настолько сложны, что протестировать их работу руками невозможно. Для участия в автоматическом тестировании сложных back-end сервисов нам нужен сильный автоматизатор.

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

Требования:

· опыт автоматизации и программирования от 1 года;
· знание Ruby (или другого языка программирования);
· знание Linux;
· плюсом будет опыт тестирования приложений со сложным медиа-контентом (видео, музыка, картинки);
· плюсом будет знание инструментов юнит-тестирования (RSpec);
· плюсом будет знакомство с системами Continuous Integration (Hudson);
· плюсом будет опыт работы с Git.

Общие требования:

· опыт локализация ошибок и составления понятных дефект-репортов;
· нацеленность на результат;
· уважительное отношение к разработчикам;
· приятность в общении и чувство юмора;
· любовь к шоколадкам «Красного Октября».

Мы предлагаем массу ништяков:

· персонализированная чашка для кофе для тех кто пишет на Ruby;
· офис на «Красном Октябре» (ст. м. «Кропоткинская», «Полянка» или «Третьяковская»);
· рабочее место с двумя мониторами, Mac OS X, Linux или Windows на выбор;
· опытный коллектив, где можно расти над собой в профессиональном плане;
· мягкий офисный график (11:00-19:30);
· соблюдение требований Трудового Кодекса;

В качестве базовой ставки мы называем 70000 тыр., эту цифру можно обсуждать.

Присылайте, пожалуйста, письма на hr@undev.ru.

Тестировщик-космоэнтомолог
2011-10-21 12:19
Тестировщик-космоэнтомолог

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

Наша Платформа™, работающая с медиа-контентом - сложный и не имеющий прямых аналогов продукт. У вас будет возможность сделать ее еще лучше, попутно совершая удивительные научные открытия в мире энтомологии, находя баги, ранее неизвестные науке. В научную работу энтомолога будет входить также анализ всего происходящего, систематизация и документирование.
Обязанности включают в себя анализ и тестирование требований, составление чек-листов, тестирование веб-проектов по чек-листам и исследовательское тестирование

Требования:

· опыт тестирования web-приложений от 1 года;
· опыт работы с требованиями (навык тест-аналитика);
· умение грамотно проектировать тесты (навык тест-дизайна);
· знание браузерных инспекторов (FireBug, Web Inspector, HTTPWatch);
· плюсом будет опыт выявления требований и работы без требований;
· плюсом будет знакомство с Linux, опыт анализа логов сервисов и локализации их ошибок.

Общие требования:

· опыт локализация ошибок и составления понятных дефект-репортов;
· нацеленность на результат;
· уважительное отношение к разработчикам;
· приятность в общении и чувство юмора;
· любовь к шоколадкам «Красного Октября».

Мы предлагаем массу ништяков:

· персонализированная чашка для кофе для тех кто пишет на Ruby;
· офис на «Красном Октябре» (ст. м. «Кропоткинская», «Полянка» или «Третьяковская»);
· рабочее место с двумя мониторами, Mac OS X, Linux или Windows на выбор;
· опытный коллектив, где можно расти над собой в профессиональном плане;
· мягкий офисный график (11:00-19:30);
· соблюдение требований Трудового Кодекса;

В качестве базовой ставки мы называем 50000 тыр., эту цифру можно обсуждать.

Присылайте, пожалуйста, письма на hr@undev.ru.

регрессионное тестирование - это реально?
2011-10-21 14:40
если инфы мало - готов рассказать об архитектуре и существующих процессах в разработке

Изображения в BadBoy
2011-10-21 16:18
Вопрос по BadBoy. При записи теста в его встроенном браузере не отображаются изображения. Поддерживает ли BadBoy вывод картинок?

Требуется Python/Django developer (Одесса)
2011-10-21 16:44
Для работы над проектами WebApps/ERP/Enterprise уровня, требуется Python/Django developer.

Профессиональные навыки:
  • Знания Python + Django,
  • Базы данных MySQL (знания PostgeSQL приветствуются).
  • OOP, CVS, Git
  • Владение HTML/CSS (XHTML 1.0, Tableless, SEO Semantic Coding)
  • Знание JavaScript (Ajax, JQuery)
  • Навыки работы с Linux
  • Умение и Желание разрабатывать большие и интересные проекты


Условия работы:
  • От 800-2000$, по результатам собеседования
  • Полный рабочий день, 5 дней в неделю
  • Работа в нерабочее время оплачивается
  • Полноценное рабочее пространство
  • Офис в центре города


Компания оплачивает переезд из других городов

Что желательно:
  • Опыт разработки на Python/Django от года
  • Возможность продемонстрировать работающие проекты (любого уровня)


Контакт:
Личные сообщения, укажите тел/skype и удобное время для разговора.
Обсуждение всех деталей в телефонном режиме или Skype, а так же встреча в офисе компании.

Ведущий специалист по тестированию в Объединенную компанию «Афиши» и «
2011-10-21 18:26
Привет,

меня зовут Андрей Кузьмичев и я отвечаю за всё тестирование в Объединенной компании «Афиши» и «Рамблера».

Сегодня мы открываем позицию ведущего специалиста по тестированию наших интернет-проектов «Афиша» и «Афиша-Еда».

Сегодня «Афиша» — это признанный лидер среди сайтов в развлечениях. Пять миллионов человек в месяц узнают из «Афиши» о новых фильмах, музыке, выставках, ресторанах, магазинах и гаджетах. А с 2008 года выходит «Афиша-Еда».

Интернет-проекты «Афиши» — это одна из крупнейших инсталляций в рунете на базе ASP.NET и MSSQL. А вся разработка у нас построена по Agile методологии. Важно отметить, что это не формальность, а действительно хорошо работающий у нас scrum-процесс.

Кого мы сейчас ищем?
Нам нужен настоящий джедай, который готов отвечать за все аспекты качества на вверенных ему проектах. В первую очередь речь идет о ручном функциональном тестировании. Будет отлично, если у вас есть опыт тестирования больших интернет-проектов, хорошее представление об устройстве современных веб-сервисов (HTTP, HTML, CSS, AJAX, архитектура и т.п.), вы можете грамотно сформулировать составленную вами методику тестирования. При этом будет очень хорошо, если у вас будут знания и практический опыт в области тестировании мобильных приложений (iOS, Android), автоматизации тестирования веб-сервисов (selenium, rc, grid) или в тестировании производительности. При этом я очень надеюсь, что вы понимаете важность и ценность тестирования. Иными словами мы ищем отличного специалиста, который готов развивать тестирование Афиши и Афиши-Еды по всем направлениям. Если у вас есть опыт координаци команды их нескольких тестировщиков, это очень хорошо.

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

Скороговоркой по условиям
Если понравитесь, то по деньгам обязательно договоримся. Зарплата белая, пересматривается по достижениям, квартальные планы и премии. Медстраховка. Хорошее оборудование, есть тестовые телефоны и iPad'ы ;) Офис около метро Автозаводская, но в конце года переезжаем в новый супер-офис в Даниловских мануфактурах на Тульской. Бесплатные чайкофебулочки. Отдельно хочу отметить, что мы очень много внимания уделяем внутренней жизни: раз в месяц к нам в гости приходят друзья из 2х2 и показывают отличные мультики, Theory&Practice организуют лекции, проходят регулярные 5 o'clock's на которых сами сотрудники рассказывают о своей работе и увлечениях. А сегодня, например, к нам приходил Starbucks и рассказывал о кофе сорта Tanzania, поил им из грейпфрута и угощал пончиками. В любом случае дальше — больше! Скорее всего что-нибудь ещё забыл :)

Все вопросы, резюме и рекомендации можете смело присылать на baabaka@rambler-co.ru, сюда в комментарии, в личку, в facebook, в @baabaka, куда удобнее :)

Историческая справка
Объединенная компания «Афиши» и «Рамблера» была создана в августе 2010 года. В состав объединенной компании входят интернет-ресурсы «Рамблер», «Афиша», «Лента», Price.ru, «Канобу» и другие. Компания издает журналы «Афиша», «Афиша—Мир», «Афиша—Еда», путеводители «Афиши» по городам и странам. Каждое лето проходит фестиваль «Пикник «Афиши» в Коломенском и Праздник «Еды» в Парке Горького. Ежемесячная аудитория интернет-проектов объединенной компании превышает 17 млн человек, суммарная ежемесячная аудитория журналов — более 2 млн человек (все данные — TNS, март 2011). Объединенная компания также является акционером сервиса контекстной рекламы «Бегун» и интерактивной рекламной группы Index 20. Объединенная компания «Афиши» и «Рамблера» входит в состав холдинга «ПрофМедиа».

Тренажеры для тестировщиков
2011-10-21 20:22
Кто-нибудь видел какие-нибудь тренажеры для тестировщиков?

Приложения созданные исключительно для улучшения навыка поиска дефектов определённого типа? Ещё какие-то приложения?

Если видели - поделитесь пожалуйста ссылками. Если не видели - как вы думаете такие приложения вообще возможно/полезны?

как поставить курсор на позицию х у ?
2011-10-21 23:17
собсно сабж

Жесть
2011-10-22 02:48


Русский тег для тестирования в твиттере?
2011-10-22 03:16
Привет,

Есть пара англоязычных тегов которые активно используются нашими англоговорящими коллегами - #softwaretesting, #qa, #dttip

Почему же русского тега про тестирование нет? или я его просто не нашел?

В головое пока только 2 варианта для тега - #тестирование и #ruqa

Или же само существование такого тега и тематических твитов в нём кажется вам бредом?

/Артём С.

Web Service Request в Visual Studio 2010
2011-10-22 20:57
Всем привет.

В vs2010 создал Web Service Request на добавление данных.
В String Body содержится тело запроса в формате {"id":"dataid","text":"textmessage"}.
Все работает нормально.

Далее добавил Data Source с данными (id и text соответственно) в csv файле.
Теперь вопрос:
Как в тело запроса в String Body передать данные из этого csv файла?

Статья про Кодировки
2011-10-23 13:27
Всем привет,

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

Вот думаю написать статью об этом.

Вопрос в том есть ли нужда у других тестировщиков знать что-то о кодировках?

Если есть то может что-то конкретное можете сказать?

/Артём С.

Нагрузка с помощью jmeter на нескольких машинах
2011-10-23 17:52
Добрый день.

Занимаюсь нагрузкой веб-сервиса. Тест написал. Все нормально работает.

Вопрос в следующем:
1) Есть ли возможность провести тестирование с нескольких (например 10) машин параллельно? Возможно с 10 виртуальных машин.
2) Если да, то подскажите, пожалуйста, каким образом это можно сделать.

Как нажать ctrl + v в Selenium2 + IE
2011-10-23 18:04
Привет Всем,

только начал изучать selenuim2... не могу понять как вставить текст из клипборда в выбранный элемент....то есть эмулировать пользовательское нажатие Ctrl+V
в документации на сайте selenium как то непонятно.. да и похоже неправильно написано, например так:
element.sendKeys( " and some" , Keys.ARROW_DOWN);
но вроде sendKeys только один параметр принимает :(

но даже и если один параметр, но Keys не имеет значений для комбинаций с Ctrl

поиск по инету решения для IE как то не дал... может плохо искал :)

Спасибо,
QuasiXR

Senior QA engineer
2011-10-23 18:18
Внимание! Если знаете специалиста, который подходит под данную вакансию, направьте его к нам! Если в итоге он выйдет на работу по данной вакании, мы переведём Вам 3000 руб. на Ваш электронный кошелек.

В связи с расширением штата, в компанию приглашаются опытные QA инженеры, которые сильны как минимум в одном из перечисленных пунктов:
  • Java - начальный-средний уровни - отлично, если программировали сами, но достаточно знать её на уровне анализа и понимания чужого кода;
  • SQL - средний-продвинутый уровни - отлично, если проходили законченные курсы и имеете сертификат, но если наработали самостоятельный практический опыт - тоже хорошо;
  • Oracle DB - средний-продвинутый уровни - отлично, если имеете один из сертификатов по Oracle;
  • Regular expression - средний-продвинутый уровни.

В рабочие активности кандидата будут (в разных степенях вовлеченности) входить:
  • Анализ, тестирование и согласование требований заказчика, постановка задач на их реализацию;
  • Составление тест-плана;
  • Проведение тест-аналитики, тест-дизайн;
  • Создание и анализ тестовых наборов для автоматизированного тестирования на java, jUnit, JMeter;
  • Принятие самостоятельных решений о способах решения поставленных задач и необходимых для этого инструментов;
  • Тестирование нетривиальной серверной части клиент-серверного приложения (навыки администрирования серверных ОС);
  • Составление непростых SQL запросов в процессе тестирования;
  • Работа с приложениями/системами: OS Windows, OS Linux, Oracle, MySQL, MS SQL, Jira, SVN, TeamCity;
  • Внедрение оттестированого и качественного продукта клиенту на его мощностях и обучение пользователей;
  • Общение «на передовой» с клиентом, выявление желаемых дополнений/изменений внедренного продукта.

Условия работы отличные, поэтому о них расскажем только тем, кому интересна работа :)

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

PS: Связаться с нами можно по адресу cv[at]quality-lab.ru или по телефону +79262750697.

Если много тестовых методов в одном классе, то они периодически падают
2011-10-24 01:29
Имею следующее тз:
1) Кнопка «Регистрация» видна и при клике ведет страницу с присутствием тега div.
2) Кнопка «Вход» видна и при клике ведет страницу с присутствием тега div.
3) Ссылка «Знакомства" и при клике ведет страницу с присутствием тега div..
4) Ссылка "Топ-100" видна и при клике ведет страницу с присутствием тега div.
5) Ссылка "Попутчики" видна и при клике ведет страницу с присутствием тега div.
6) Ссылка «Свидания» видна и при клике ведет страницу с присутствием тега div.
7) Ссылка «Друзья» видна и при клике ведет страницу с присутствием тега div.
8) Ссылка «Помощь» видна и при клике ведет страницу с присутствием тега div.
9) Ссылка «Бар знакомств» видна и при клике ведет страницу с присутствием тега div.
10) Ссылка «Для мобильного» видна и при клике ведет страницу с присутствием тега div.
11) Ссылка «Поиск попутчиков» видна и при клике ведет страницу с присутствием тега div.
12) Ссылка «О компании» видна и при клике ведет страницу с присутствием тега div.
13) Ссылка «Партнерам» видна и при клике ведет страницу с присутствием тега div.
14) Ссылка «Реклама» видна и при клике ведет страницу с присутствием тега div.
15) Ссылка «Вакансии» видна и при клике ведет страницу с присутствием тега div.

Реализовал вот так:

public class Test4 extends TestBase {

Test

public void LoginPageTestNg_test1() throws Exception {

wd.get("http://www.mamba.ru/");
wd.findElement(By.cssSelector("a.ui-btn.ui-btn-big")).click();
wd.findElement(By.cssSelector("div"));
}



Test

public void LoginPageTestNg_test2() throws Exception {

wd.get("http://www.mamba.ru/");
wd.findElement(By.cssSelector("a.o-auth")).click();
wd.findElement(By.cssSelector("div"));
}


Test

public void LoginPageTestNg_test3() throws Exception {

wd.get("http://www.mamba.ru/");
wd.findElement(By.cssSelector("div#MenuNav ul li.page-www a")).click();
wd.findElement(By.cssSelector("div"));
}




Test

public void LoginPageTestNg_test4() throws Exception {

wd.get("http://www.mamba.ru/");
wd.findElement(By.cssSelector("li.page-top a")).click();
///wd.wait(3000);
wd.findElement(By.cssSelector("div"));
// wd.findElement(By.xpath("//a[contains(@href,'/top/parni.phtml')]"));
/// wd.findElement(By.xpath("//a[contains(@href,'/top/devushki.phtml')]"));
}


Test

public void LoginPageTestNg_test5() throws Exception {

wd.get("http://www.mamba.ru/");
wd.findElement(By.cssSelector("li.page-travel a")).click();
///wd.wait(3000);
wd.findElement(By.cssSelector("div"));
/// wd.findElement(By.xpath("//a[contains(@href,'/travel/')]")).click();
/// wd.findElement(By.xpath("//text[contains(@class,'list-title')]"));
}



Test

public void LoginPageTestNg_test6() throws Exception {

wd.get("http://www.mamba.ru/");
wd.findElement(By.cssSelector("li.page-placecard a")).click();
///wd.wait(3000);
wd.findElement(By.cssSelector("div"));
///wd.findElement(By.xpath("//a[contains(@href,'/placecard/')]")).click();
/// wd.findElement(By.xpath("//а[contains(@class,'fs25')]"));
}


Test

public void LoginPageTestNg_test7() throws Exception {

wd.get("http://www.mamba.ru/");
wd.findElement(By.cssSelector("li.page-diary a")).click();
///wd.wait(3000);
wd.findElement(By.cssSelector("div"));
///wd.findElement(By.xpath("//a[contains(@href,'/diary/')]")).click();
/// wd.findElement(By.xpath("//а[contains(@href,'diary/search.phtml')]"));
}



Test

public void LoginPageTestNg_test8() throws Exception {

wd.get("http://www.mamba.ru/");
wd.findElement(By.cssSelector("li.link-support a")).click();
///wd.wait(3000);
wd.findElement(By.cssSelector("div"));
////wd.findElement(By.xpath("//a[contains(@href,'/support.phtml')]")).click();
}


Test

public void LoginPageTestNg_test9() throws Exception {

wd.get("http://www.mamba.ru/");
/// wd.findElement(By.xpath("//a[contains(@href,'/promo/toolbar.phtml')]")).click();
wd.findElement(By.cssSelector("li.BarMenu a")).click();
///wd.wait(3000);
wd.findElement(By.cssSelector("div"));
}


Test

public void LoginPageTestNg_test10() throws Exception {

wd.get("http://www.mamba.ru/");
/// wd.findElement(By.xpath("//a[contains(@href,'/mobile/main/')]")).click();
wd.findElement(By.cssSelector("li.WapMenu a")).click();
///wd.wait(3000);
wd.findElement(By.cssSelector("div"));
}


Test

public void LoginPageTestNg_test11() throws Exception {

wd.get("http://www.mamba.ru/");
wd.findElement(By.cssSelector("div#FindTravelers h2 a")).click();
///wd.wait(3000);
wd.findElement(By.cssSelector("div"));
///wd.findElement(By.xpath("//a[contains(@href,'/travel/index.phtml')]")).click();
}


Test

public void LoginPageTestNg_test12() throws Exception {

wd.get("http://www.mamba.ru/");
wd.findElement(By.cssSelector("div#FindTravelers h2 a")).click();
///wd.wait(3000);
wd.findElement(By.cssSelector("div"));
///wd.findElement(By.xpath("//a[contains(@href,'http://www.corp.mamba.ru/')]")).click();
}

Test

public void LoginPageTestNg_test13() throws Exception {

wd.get("http://www.mamba.ru/");
wd.findElement(By.xpath("//a[contains(@href,'/partner/')]")).click();
///wd.wait(3000);
wd.findElement(By.cssSelector("div"));
}


Test

public void LoginPageTestNg_test14() throws Exception {

wd.get("http://www.mamba.ru/");
wd.findElement(By.xpath("//a[contains(@href,'/adv/audience.phtml')]")).click();
///wd.wait(3000);
wd.findElement(By.cssSelector("div"));
}

Test

public void LoginPageTestNg_test15() throws Exception {

wd.get("http://www.mamba.ru/");
wd.findElement(By.xpath("//a[contains(@href,'/company/job.phtml')]")).click();
///wd.wait(3000);
wd.findElement(By.cssSelector("div"));
}


}

Я при таком врианте в ФФ бывает запустишь и все тесты пройдут на отлично, бывает 2 не пройдут 13 пройдут или 8 не пройдут 7 пройдут. И что делать я не знаю, я пробовал уже через xpath все элементы определять и та же беда. Не буду же я каждый тестовый метод. С ошибками тесты валятся все с одинаковыми:

org.openqa.selenium.InvalidSelectorException: The given selector css=li.page-travel a is either invalid or does not result in a WebElement. The following error occurred:
[Exception... "An invalid or illegal string was specified" code: "12" nsresult: "0x8053000c (NS_ERROR_DOM_SYNTAX_ERR)" location: "resource://fxdriver/modules/atoms.js Line: 6904"]; duration or timeout: 94 milliseconds
For documentation on this error, please visit: http://seleniumhq.or..._exception.html (это ошибка 5 теста)
Хотя если прогнать его по новой то ошибки вполне возможно и не будет. Бывает и все 15 пройдут без ошибок. Я уже и не знаю что делать, на класс же делать для каждого тестового метода :-( Кто сталкивался с такой проблемой?


© 2010 | Software-Testing.Ru


В избранное