Первый опыт руководства -> мой полный провал

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

Когда мне было около двадцати, я впервые почувствовала себя настоящим руководителем. То…

1

Android 16. Восторг пользователя или головная боль тестировщиков?

🆕Google открыла сезон I/O 2025 презентацией Android 16 и нового стиля Material 3 Expressive. Теперь интерфейс будет не только функциональным, но и эмоционально вовлекающим. Нас ждет больше ярких цветов, живых форм и динамичных эффектов. И ещё больше тестирования!

🔹 Больше движения. Когда вы смахиваете уведомление, элементы интерфейса начина…

2

Митап #1

14 апреля в «Лаборатории Качества» произошло важное событие — мы провели свой первый корпоративный митап. Без долгих регламентов, с живыми спикерами, а не записанными видео, рабочими инсайтами и теплой атмосферой. Получилось именно так, как мы хотели – полезно, по делу и с огоньком. Четыре выступления за два часа — и ни одна минута не прошла зря:

Митап #1
2

Освоение тестирования SOAP API

Не так давно в нашем блоге рассказывалось об освоении тестирования через REST API. Я же хочу поделиться опытом тестирования SOAP, меня зовут Юлия Багрий и я расскажу про «старшего брата» REST.

1

Лёгкий гайд по миграции с Google Assistant на Gemini 📥

Объявлено, что Google заменяют старого ассистента на Gemini — помощника нового поколения на базе генеративного ИИ. Теперь он не просто включает музыку, а анализирует данные и управляет Jira.

Что это даёт бизнесу?

Нам 16. Мы выросли, но не повзрослели (и в этом сила!!!)

Сегодня нашей классной "Лаборатории Качества" исполняется 16 лет. Это гордость. И это про нас с вами. 👨‍💻16 лет назад всё начиналось с нескольких человек и одной большой идеи — делать тестирование, которое меняет всё. Сегодня у нас — десятки проектов одновременно {и ни одного скучного}, распределённая команда из 100+ специалистов по всему миру,…

Нам 16. Мы выросли, но не повзрослели (и в этом сила!!!)
1
\n","lang":""}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Более подробно про XML можно узнать на w3schools или codenet (по-русски). Обязательно обратите внимание на описание namespaces (метод разрешения конфликтов при описании элементов в XML) – в SOAP их использование необходимо.

"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h3","text":"XSD"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

При работе всегда удобно иметь стандартизированное описание возможных XML-документов и проверять их на корректность заполнения. Для этого существует XML Schema Definition (или сокращенно XSD). Две главные фичи XSD для тестировщика – это описание типов данных и наложение ограничений на возможные значения. Например, элемент из предыдущего примера можно сделать необязательным для заполнения и ограничить его размер 255 символами с помощью XSD:

"}},{"type":"code","cover":false,"hidden":false,"anchor":"","data":{"text":"...\n\n\n\n\n\n\n\n...","lang":""}},{"type":"quote","cover":false,"hidden":false,"anchor":"","data":{"text":"

XSD – это сила и мощь. Чем подробнее описан XSD, тем меньше головной боли доставит вам тестирование сервиса.

","subline1":""}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

С помощью выстроенной схемы сервис сам сможет валидировать полученные данные и возвращать пользователю ошибку. Таким образом, у вас отпадает необходимость тестировать «любимые» классы эквивалентности для форматов заполнения полей (конечно, при условии подробного и корректного описания XSD, а также реализации проверки запроса на соответствие схеме на сервере). Следовательно, первым делом при тестировании SOAP вы должны проверить документацию – XSD. Довольно часто встречаются ошибки в XSD в виде некорректно прописанных ограничений или случайно закравшихся кириллических символов. Подробнее прочитать про XSD можно опять же на w3schools и codenet (по-русски).

"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h3","text":"WSDL"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Web Services Description Language (WSDL) – это язык на основе XML, который используется для описания веб-сервисов. В WSDL-документе содержится информация о местонахождении сервиса и доступных методах (операциях); для каждого метода определяются параметры отправляемого и получаемого сообщения. Обратите внимание на то, что XSD может быть «встроен» внутрь WSDL-документа (например, у Yandex Speller API).

"}},{"type":"quote","cover":false,"hidden":false,"anchor":"","data":{"text":"

WSDL-документ – это «капелька магии» в мире SOAP. Его можно сгенерировать из классов для сервера, а уже из него можно создать классы для клиента. Главное – не забывать проверять адекватность и доступность WSDL-документа для пользователей.

","subline1":""}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h3","text":"Протокол SOAP"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

У «героя» нашей статьи есть две основные версии протокола: 1.1 и 1.2. Для начинающего тестировщика различия между этими версиями не так принципиальны. Важно лишь знать, какую версию использует ваш сервис (в некоторых случаях применяются сразу обе версии, и тогда объем тестирования возрастает). SOAP задает формат сообщений, которыми обмениваются клиент и сервер, в нем же описываются подробности обработки приложениями конкретных фрагментов сообщений. Например, определенные элементы в заголовке позволяют создавать приложения, в которых сообщения сначала проходят через несколько промежуточных «станций», а только потом достигают конечного получателя.

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Пример запроса checkText через Yandex Speller API:

"}},{"type":"code","cover":false,"hidden":false,"anchor":"","data":{"text":"\n\n\n\nошипка\n\n\n","lang":""}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

И полученный ответ:

"}},{"type":"code","cover":false,"hidden":false,"anchor":"","data":{"text":"\n\n\n\n\nошипка\nошибка\n\n\n\n\n","lang":""}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Прочитать о формате SOAP сообщений можно на w3schools.

"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h2","text":"Расширения SOAP"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

В работе вам также могут встретиться различные «расширения» SOAP – стандарты типа WS-*. Одним из самых распространенных является WS-Security позволяющий работать с шифрованием и электронными подписями. Нередко вместе с ним применяется WS-Policy, с помощью которого можно управлять правами на использование вашего сервиса.

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Пример использования WS-Security:

"}},{"type":"code","cover":false,"hidden":false,"anchor":"","data":{"text":"\nAlice\n6S3P2EWNP3lQf+9VC3emNoT57oQ=\nYF6j8V/CAqi+1nRsGLRbuZhi\n2008-04-28T10:02:11Z\n","lang":""}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Все эти расширения – достаточно сложные конструкции, используемые далеко не в каждом SOAP-сервисе; их подробное изучение на начальном этапе освоения тестирования SOAP вряд ли будет актуально.

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Стать клиентом

"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h2","text":"Инструменты"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Как вы уже поняли, SOAP – дело серьезное, для работы с ним нужно знать теорию и многочисленные стандарты. На практике такая сложность привела бы к весьма ощутимым трудозатратам (например, нужно было бы каждый раз смотреть схему в блокнотике и слать запросы curl-ом). Поэтому были созданы инструменты, облегчающие работу с SOAP.

"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h3","text":"Редакторы XML / XSD"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Хороший тестировщик начинает тестирование еще на стадии написания документации, поэтому для проверки схем удобно использовать специальные редакторы. Два самых известных – Oxygen (кроссплатформенный) и Altova (только для Windows); оба они являются платными. Это очень мощные программы, которыми активно пользуются аналитики при описании сервисов.

"}},{"type":"quote","cover":false,"hidden":false,"anchor":"","data":{"text":"

В моей практике полезными оказались три фичи редакторов: визуализация XSD, генерация XML на основе XSD и валидация XML по XSD.

","subline1":""}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

1. Визуализация XSD нужна для наглядного представления схемы, позволяющего быстро вычленить обязательные элементы и атрибуты, а также существующие ограничения. Например, для запроса CheckTextRequest обязательным является элемент text, а необязательными – все три атрибута (при этом у атрибута options установлено значение по умолчанию – ноль).

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Визуализация необходима в том случае, когда типов и ограничений в схеме много. Если вам нужна только она, и вы не хотите платить за специальные редакторы, то можно рассмотреть бесплатные альтернативы (например, JDeveloper).

"}},{"type":"media","cover":false,"hidden":false,"anchor":"","data":{"items":[{"title":"","image":{"type":"image","data":{"uuid":"625616f4-080a-56fe-96c7-9eb26ebf0256","width":391,"height":284,"size":17885,"type":"png","color":"efeee8","hash":"","external_service":[],"base64preview":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/wAARCAAKAAoDAREAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAABgUJ/8QAIxAAAgEDAgcBAAAAAAAAAAAAAQIDAAQRBVEGEhMUITJCsf/EABcBAQADAAAAAAAAAAAAAAAAAAMAAQL/xAAaEQEBAAMBAQAAAAAAAAAAAAABAAIDMREz/9oADAMBAAIRAxEAPwDSbX9VS6nsZLR2WPnOWaNlY4GfVlzQb8X0l1J4yqE5iQ7qPymORsQ47ZkLlGKntScg489SOpj9Cp5QrS4uDawkzyEmNfo7Ur2wX//Z"}}}]}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

2. Генерация XML на основе XSD полезна тогда, когда вы хотите увидеть корректный пример сообщения. Я пользуюсь ей для того, чтобы быстро поэкспериментировать с возможным заполнением сообщения и проверить нюансы работы ограничений.

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

3. После использования фичи из пункта 2 полезно провести валидацию XML по XSD – то есть проверить сообщение на корректность. Вместе фичи 2 и 3 позволяют отлавливать хитрые дефекты в XSD еще тогда, когда сам сервис находится в разработке.

"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h2","text":"Инструмент тестирования – SoapUI"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Тестирование SOAP практически всегда подразумевает использование SoapUI. Прочитать про использование этого инструмента можно в разных источниках (источник 1, источник 2), но эффективнее всего будет ознакомиться тут.

"}},{"type":"media","cover":true,"hidden":false,"anchor":"","data":{"items":[{"title":"","image":{"type":"image","data":{"uuid":"800fc7bf-e33a-542c-8b70-357c800a8e16","width":1280,"height":720,"size":342828,"type":"png","color":"337789","hash":"","external_service":[],"base64preview":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/wAARCAAKAAoDAREAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAABwQG/8QAJBAAAgIABQMFAAAAAAAAAAAAAQIDBAAFBxEhBhIiE0FCYXH/xAAYAQADAQEAAAAAAAAAAAAAAAADBQYEB//EACMRAAECBQMFAAAAAAAAAAAAAAEAAgMEESEiBRJBExZRkaH/2gAMAwEAAhEDEQA/AMnlGtFrMK7wtaqSOV8Zq0rhCCoJI9RQSRvyRuPvFy6cqCAFxbttgc19bcgj4gK5qb1ULc4i1W6nKCRgpEp2I34+WFXWjcvViNLkKWl2+gp9RJZa2Y0I60jRK9LyVCVB/dsHm8XinhA0jOC/dfJHbAdx498YingX/9k="}}}]}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Я выделяю 8 условных уровней владения SoapUI:

"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h3","text":"Уровень 1 – умею отправлять запросы"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Научитесь создавать проект на основе WSDL. SoapUI может сгенерировать все необходимые запросы для вас; вам останется лишь проверить правильность их заполнения и нажать кнопочку «Send». После выработки навыков создания корректных запросов вы должны овладеть искусством формирования некорректных запросов, вызывающих появление ошибок.

"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h3","text":"Уровень 2 – умею делать Test Suites и Test Cases"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

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

"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h3","text":"Уровень 3 – умею писать Assertions"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

После освоения тест-кейсов вам будет полезно научиться делать их автоматически проверяемыми. После этого вам уже не нужно будет искать «глазами» информацию об ответе: при наличии автоматической проверки кейсы будут помечаться зеленым (если проверка пройдена) или красным (если не пройдена). SoapUI предоставляет большой набор возможных проверок (assertions), но самые удобные и простые – это Contains и Not Contains. С их помощью можно проверить факт наличия конкретного текста в полученном ответе. Эти проверки также поддерживают поиск с помощью регулярных выражений.

"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h3","text":"Уровень 4 – использую XPath и/или XQuery в Assertions"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Для тех, кто немного знаком с автоматизацией тестирования UI с помощью Selenium, язык XPath – знакомая вещь. Грубо говоря, XPath позволяет искать элементы в XML-документе. XQuery – похожая технология, которая может использовать XPath внутри себя; этот язык гораздо мощнее, он напоминает SQL. Оба эти языка можно использовать в Assertions. Проверки с их помощью получаются более прицельными и стабильными, поэтому ваши кейсы будут пользоваться большим доверием.

"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h3","text":"Уровень 5 – умею писать сложные тесты с помощью специальных шагов"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

В тест-кейсах может содержаться не только один запрос, но и несколько (к примеру, когда вы хотите эмулировать стандартный сценарий работы пользователя «создать сущность» → «экспортировать сущность»). Между запросами могут находиться другие специальные шаги, например:

"}},{"type":"list","cover":false,"hidden":false,"anchor":"","data":{"items":["Properties и Property Transfer (помогают переиспользовать данные и передавать их между запросами);","JDBC Request (используется для получения данных из базы данных);","Conditional Goto (позволяет сделать разветвления или циклы в тест-кейсе);","Run TestCase (помогает вынести какие-то типовые запросы в отдельные тест-кейсы и вызывать их там, где нужно)."],"type":"UL"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h3","text":"Уровень 6 – использую скрипты на Groovy"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

SoapUI позволяет писать скрипты на Groovy в различных местах. Простейший случай – это генерация данных в самом запросе с помощью вставок ${=}. Я постоянно пользуюсь такими вставками:

"}},{"type":"list","cover":false,"hidden":false,"anchor":"","data":{"items":["${=new Date().format(«yyyy-MM-dd’T’HH:mm:ss»)} – для вставки текущей даты и времени в необходимом формате;","${=java.util.UUID.randomUUID()} – для вставки корректно сформированного случайного GUID."],"type":"UL"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

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

"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h3","text":"Уровень 7 – использую MockServices"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

SoapUI на основе WSDL может генерировать Mock-объекты. Mock-объект – это простейшая симуляция сервиса. С помощью «моков» можно начать писать и отлаживать тест-кейсы еще до того, как сервис реально будет доступен для тестирования. Также их можно использовать в качестве «заглушек» для временно недоступных сервисов.

"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h3","text":"Уровень 8 – бог SoapUI"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Вы знаете разницу между платной и бесплатной версиями SoapUI и используете SoapUI API в коде. Вы используете плагины и запускаете выполнение кейсов через командную строку и/или CI. Ваши тест-кейсы просты и легко поддерживаются. В общем, вы «съели собаку» на этом инструменте. Я бы с радостью пообщалась с тем, кто освоил SoapUI на таком уровне. Если вы являетесь таковым – отпишитесь в комментариях!

"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h2","text":"Тестирование с помощью языков программирования"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

В какой-то момент у вас может возникнуть мысль, что проще писать тесты не в SoapUI, а просто на языках программирования. Это нормально. Будучи UI-инструментом, SoapUI имеет свои недостатки, которые в лучшем случае решаются приобретением платной версии, а в худшем – «костылями» и большими затратами времени на поддержку тестов. Для работы с протоколом SOAP в языках программирования существуют специальные библиотеки. Так, в Java можно использовать Axis2 (подробные примеры доступны в серии статей на IBM developerWorks), в Python – библиотеки suds либо zeep, в Groovy – библиотеку groovy-wslite.

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Приведу пример того, как выглядит запрос к YandexSpeller API, выполненный с помощью groovy-wslite:

"}},{"type":"code","cover":false,"hidden":false,"anchor":"","data":{"text":"import wslite.soap.*\ndef client = new SOAPClient('http://speller.yandex.net/services/spellservice?WSDL')\ndef response = client.send(SOAPAction: 'http://speller.yandex.net/services/spellservice/checkText') {\nbody {\nCheckTextRequest('lang': 'ru', 'xmlns':'http://speller.yandex.net/services/spellservice') {\ntext('ошипка')\n}\n}\n}\nassert 'ошибка' == response.CheckTextResponse.SpellResult.error.s.text()\nassert '1' == response.CheckTextResponse.SpellResult.error.@code.text()","lang":""}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Насколько я знаю, высокоуровневых фреймворков (по типу Rest-assured) для тестирования SOAP пока не существует, но появился интересный инструмент – karate. С его помощью можно описывать кейсы для тестирования SOAP и REST в виде сценариев по типу Cucumber / Gherkin. Для многих тестировщиков обращение к karate будет идеальным решением, ведь такие сценарии по сложности написания и поддержки кейсов будут лежать где-то посередине между использованием SoapUI и написанием собственного фреймворка для тестирования SOAP.

"}},{"type":"header","cover":false,"hidden":false,"anchor":"","data":{"style":"h2","text":"Заключение"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Вряд ли вам когда-либо захочется тестировать SOAP просто так, для себя (как могло бы получиться с REST-ом). Это тяжеловесный протокол, который используется в серьезных корпоративных решениях. Но его тяжеловесность одновременно является подарком тестировщику: все используемые технологии стандартизированы, имеются качественные инструменты для работы. От тестировщика требуется лишь желание их изучить и использовать.

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Давайте соберем воедино тот самый чек-лист необходимых навыков для тестировщика. Итак, если вы только начинаете тестировать SOAP сервисы, вам нужно знать и уметь использовать:

"}},{"type":"list","cover":false,"hidden":false,"anchor":"","data":{"items":["XML.","XSD.","WSDL.","SOAP.","Редакторы XML / XSD (на уровне визуализации XSD).","SoapUI на уровне 1."],"type":"UL"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Как видите, основной упор приходится на изучение стандартов, в SoapUI достаточно просто уметь выполнять запросы. По мере погружения в тестирование SOAP перед вам будут возникать задачи, которые потребуют уже более серьезных навыков и знаний, но не стоит пытаться изучить всё и сразу. Гораздо важнее последовательность в повышении уровня сложности выполняемых задач. Следуя этой рекомендации, в один прекрасный момент вы поймете, что стали хорошим специалистом в этой области!

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Изучайте! Удачи!

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

#soap #api #restapi #qualitylab #softwaretesting #qa #тестирование #тестированиепо #партнерство #изучаем #qaengineer

"}}],"summaryContent":null,"isExistSummaryContent":false,"warningFromEditor":null,"warningFromEditorTitle":null,"counters":{"comments":0,"favorites":1,"reposts":0,"views":392,"hits":1783,"reads":null,"online":0},"dateFavorite":0,"hitsCount":1783,"isCommentsEnabled":true,"isLikesEnabled":true,"isRemovedByUserRequest":false,"isFavorited":false,"isPinned":false,"repostId":null,"repostData":null,"subscribedToTreads":false,"isEditorial":false,"isAudioAvailable":false,"audioUrl":null,"isAudioAvailableToGenerate":false,"commentEditor":{"enabled":true,"who":null,"text":"","until":null,"reason":null,"type":"everybody"},"isBlur":false,"isPublished":true,"isDisabledAd":false,"withheld":[],"ogTitle":null,"ogDescription":"Тестирование SOAP API, основы SOAP и WSDL, работа с XML и XSD, инструменты для тестирования, советы для тестировщиков и менеджеров.","url":"https://vc.ru/services/1924757-testirovanie-soap-api-osnovnye-principy-i-instrumenty","author":{"id":1894539,"name":"Лаборатория Качества","nickname":null,"description":"Тестируем сайты, ПО, приложения и другие IT-продукты на аутсорсинге. NDA. Контакты и подробности о нас: quality-lab.ru","uri":"","avatar":{"type":"image","data":{"uuid":"3672385d-5e78-50ad-9425-fd4867549300","width":2040,"height":2040,"size":2188090,"type":"png","color":"065e84","hash":"","external_service":[],"base64preview":"/9j/4AAQSkZJRgABAQIAHAAcAAD/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/wAARCAAKAAoDAREAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAwQGB//EACYQAAIBAgQFBQAAAAAAAAAAAAECAwQFABESIQYHIjFRExRCYXP/xAAYAQACAwAAAAAAAAAAAAAAAAAEBwACA//EAB8RAQACAQMFAAAAAAAAAAAAAAEAAwIEERITFCFBUf/aAAwDAQACEQMRAD8AyCzcvprlwnNxi92tlHCsjg+vqV9ajZU6dyfAPbDPy1HTtKwd4k69LldQ2uQEjffXE7hny/PBfNgHb4fIe61dUSaI1Mpp061i1nQrEDMhewJyGZ+hiZhyX3K0ZLWYr4j8M0ohjAlcAKPkfGMmE7s//9k="}},"cover":{"cover":{"type":"image","data":{"uuid":"0834afcd-a0e5-55d7-9800-d93ff34c512d","width":1473,"height":480,"size":93718,"type":"jpg","color":"dbeaf0","hash":"","external_service":[],"base64preview":"/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAAKAAoDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAABAMJ/8QAIBAAAgEEAgMBAAAAAAAAAAAAAQIRAAMEEgUxIVFhof/EABUBAQEAAAAAAAAAAAAAAAAAAAQF/8QAFxEAAwEAAAAAAAAAAAAAAAAAAAECEf/aAAwDAQACEQMRAD8A0a4XBPEHK1yGyLjJDi+zOsiZ1nqhvk5CuwGMWAMA7Dz+0vYgsZMt2fdRNm2SSUUk/KQkTLrWf//Z"}},"cover_y":100},"achievements":[{"title":"Год на vc.ru","code":"registration_1_year","description":"Первый год с vc.ru. Получена 24 июля 2025.","previewUuid":"0d11c244-49de-50e7-894e-b9b27945d42b","formats":{"glb":"https://static.vc.ru/achievements/fish.glb","usdz":"https://static.vc.ru/achievements/fish.usdz"},"viewData":{"contentColor":"#C67AA3","textMaxWidth":0.634765625,"textX":0.5888671875,"textY":0.54296875,"logoX":0.5859375,"logoY":0.6669921875,"logoXNoText":0.6044921875,"logoYNoText":0.5439453125},"id":3564532,"userId":1894539,"count":0,"shareImage":"https://api.vc.ru/achievements/share/3564532"}],"lastModificationDate":1764915985,"isSubscribed":false,"isSubscribedToNewPosts":false,"isMuted":false,"isAvailableForMessenger":true,"badgeId":null,"isDonationsEnabled":true,"isPlusGiftEnabled":true,"isUnverifiedBlogForCompanyWithoutPro":true,"isRemovedByUserRequest":false,"isFrozen":false,"isDisabledAd":false,"isPlus":false,"isVerified":false,"isPro":false,"yandexMetricaId":null,"badge":null,"isOnline":false,"tgChannelShortname":null,"isUnsubscribable":true,"type":1,"subtype":"personal_blog"},"subsite":{"id":200396,"name":"Сервисы","description":"Новые сервисы, обновления инструментов, опыт использования и полезные приёмы.","uri":"/services","avatar":{"type":"image","data":{"uuid":"158fab2d-76c1-5ed8-898a-76ee48d4c795","width":1200,"height":1200,"size":99571,"type":"png","color":"7cdaea","hash":"08183848d81000","external_service":[]}},"cover":{"type":"image","data":{"uuid":"c3fe3abb-6808-527e-9eb1-2b6bb92ea400","width":3840,"height":1120,"size":19502,"type":"png","color":"7cdcec","hash":"","external_service":[]}},"lastModificationDate":1688995401,"isSubscribed":false,"isSubscribedToNewPosts":false,"isMuted":false,"isAvailableForMessenger":false,"isDisabledAd":false,"nickname":"services","isUnsubscribable":true,"badge":null,"badgeId":null,"isDonationsEnabled":false,"isOnline":false,"isPlus":false,"isUnverifiedBlogForCompanyWithoutPro":false,"isVerified":false,"isRemovedByUserRequest":false,"isFrozen":false,"isPro":false,"type":2,"subtype":"community"},"reactions":{"counters":[{"id":2,"count":1}],"reactionId":0},"isNews":false,"source":null,"clusters":[],"donations":{"amount":0,"isDonated":false},"commentsSeenCount":null}},{"type":"entry","data":{"id":1913166,"customUri":"gaid-po-migratsii-s-google-assistant-na-gemini","subsiteId":1894539,"title":"Лёгкий гайд по миграции с Google Assistant на Gemini 📥","date":1744102764,"dateModified":1744109927,"blocks":[{"type":"text","cover":true,"hidden":false,"anchor":"","data":{"text":"

Объявлено, что Google заменяют старого ассистента на Gemini — помощника нового поколения на базе генеративного ИИ. Теперь он не просто включает музыку, а анализирует данные и управляет Jira.

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Что это даёт бизнесу?

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

🔹 Меньше рутины. Gemini умеет анализировать данные, интегрируется с Jira и Google Workspace. По заявлениям Google, он может сэкономить до 40% времени на рутинных задачах.

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

🔹 Дебаг на лету. Встроенные инструменты Gemini помогают искать баги в коде. Вопрос: насколько хорошо он это делает? По первым тестам, он пока путается в сложных архитектурах.

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

🔹 IoT & API. Можно управлять умными устройствами через API. И, опять же, пока без полной документации и поддержки всех сервисов.

"}},{"type":"media","cover":false,"hidden":false,"anchor":"","data":{"items":[{"title":"[Ссылка на скачивание]⚡","image":{"type":"image","data":{"uuid":"846527ec-f001-5159-8c82-0c58599d2cca","width":718,"height":787,"size":114308,"type":"jpg","color":"f0f3f2","hash":"","external_service":[]}}}]}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Есть фишки для айтишников

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

🔘Gemini Live — живой голосовой ассистент. Пока что без поддержки русского языка, но обещают добавить.

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

🔘Deep Research — поиск информации и генерация текстов. Полезно для быстрых брифов, но пока не заменит реальную аналитику.

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

🔘Управление с экрана блокировки — ставить таймеры, включать музыку и даже управлять устройствами, не разблокируя телефон.

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

⚠ И очень много \"Но!\"

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

🔴 Где офлайн-режим? Сейчас Gemini требует интернет-соединение, в отличие от локальных ИИ-решений типа Apple Siri (которая уже умеет работать офлайн). Насколько стабильно будет работать новый помощник?

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

🔴 А безопасность? Google говорит, что Gemini «защищает данные», но точные механизмы шифрования пока не раскрыты. Кому будут доступны данные в облаке?

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

🔴А если он будет хуже? Gemini использует генеративный ИИ, и мы уже видели, как такие системы могут генерировать… странные ответы.

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

Новый ИИ-помощник уже доступен на Pixel 9 и в приложении для Android (40+ языков, 200+ стран). Массовый переход Assistant на Gemini случится в ближайшие месяцы, а в конце 2025 Assistant официально выключат на мобильных устройствах.

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

🔗 Если вы используете Google Assistant для автоматизации и голосовых команд, готовьтесь к изменениям, но не переживайте! Мы уже потратили время и собрали всё самое важное, чтобы вам не пришлось тратить ⏰ на поиски нужной информации. Это не технический гайд, а простое и понятное практическое руководство для специалистов разных уровней.

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

📥 Не хотите разбираться в документации Google? Скачивайте \"Гайд по миграции с Google Assistant на Gemini\" от ЛК! [Ссылка на скачивание]⚡

"}},{"type":"text","cover":false,"hidden":false,"anchor":"","data":{"text":"

#QualityLab #бизнес #News #гайд #Google #Gemini #IT #гугл #ии #QA #ит

"}},{"type":"media","cover":true,"hidden":false,"anchor":"","data":{"items":[{"title":"","image":{"type":"image","data":{"uuid":"1985eb81-ecc1-5797-8ea5-ecd824827ca0","width":1280,"height":1280,"size":83836,"type":"jpg","color":"b3cdd8","hash":"","external_service":[]}}}]}}],"summaryContent":null,"isExistSummaryContent":false,"warningFromEditor":null,"warningFromEditorTitle":null,"counters":{"comments":0,"favorites":0,"reposts":0,"views":1233,"hits":260,"reads":null,"online":0},"dateFavorite":0,"hitsCount":260,"isCommentsEnabled":true,"isLikesEnabled":true,"isRemovedByUserRequest":false,"isFavorited":false,"isPinned":false,"repostId":null,"repostData":null,"subscribedToTreads":false,"isEditorial":false,"isAudioAvailable":false,"audioUrl":null,"isAudioAvailableToGenerate":false,"commentEditor":{"enabled":true,"who":null,"text":"","until":null,"reason":null,"type":"everybody"},"isBlur":false,"isPublished":true,"isDisabledAd":false,"withheld":[],"ogTitle":null,"ogDescription":"Миграция с Google Assistant на Gemini, новый ИИ-помощник, интеграция с Jira, управление данными, экономия времени, доступность на Pixel 9","url":"https://vc.ru/services/1913166-gaid-po-migratsii-s-google-assistant-na-gemini","author":{"id":1894539,"name":"Лаборатория Качества","nickname":null,"description":"Тестируем сайты, ПО, приложения и другие IT-продукты на аутсорсинге. NDA. Контакты и подробности о нас: quality-lab.ru","uri":"","avatar":{"type":"image","data":{"uuid":"3672385d-5e78-50ad-9425-fd4867549300","width":2040,"height":2040,"size":2188090,"type":"png","color":"065e84","hash":"","external_service":[],"base64preview":"/9j/4AAQSkZJRgABAQIAHAAcAAD/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/wAARCAAKAAoDAREAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAwQGB//EACYQAAIBAgQFBQAAAAAAAAAAAAECAwQFABESIQYHIjFRExRCYXP/xAAYAQACAwAAAAAAAAAAAAAAAAAEBwACA//EAB8RAQACAQMFAAAAAAAAAAAAAAEAAwIEERITFCFBUf/aAAwDAQACEQMRAD8AyCzcvprlwnNxi92tlHCsjg+vqV9ajZU6dyfAPbDPy1HTtKwd4k69LldQ2uQEjffXE7hny/PBfNgHb4fIe61dUSaI1Mpp061i1nQrEDMhewJyGZ+hiZhyX3K0ZLWYr4j8M0ohjAlcAKPkfGMmE7s//9k="}},"cover":{"cover":{"type":"image","data":{"uuid":"0834afcd-a0e5-55d7-9800-d93ff34c512d","width":1473,"height":480,"size":93718,"type":"jpg","color":"dbeaf0","hash":"","external_service":[],"base64preview":"/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAAKAAoDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAABAMJ/8QAIBAAAgEEAgMBAAAAAAAAAAAAAQIRAAMEEgUxIVFhof/EABUBAQEAAAAAAAAAAAAAAAAAAAQF/8QAFxEAAwEAAAAAAAAAAAAAAAAAAAECEf/aAAwDAQACEQMRAD8A0a4XBPEHK1yGyLjJDi+zOsiZ1nqhvk5CuwGMWAMA7Dz+0vYgsZMt2fdRNm2SSUUk/KQkTLrWf//Z"}},"cover_y":100},"achievements":[{"title":"Год на vc.ru","code":"registration_1_year","description":"Первый год с vc.ru. Получена 24 июля 2025.","previewUuid":"0d11c244-49de-50e7-894e-b9b27945d42b","formats":{"glb":"https://static.vc.ru/achievements/fish.glb","usdz":"https://static.vc.ru/achievements/fish.usdz"},"viewData":{"contentColor":"#C67AA3","textMaxWidth":0.634765625,"textX":0.5888671875,"textY":0.54296875,"logoX":0.5859375,"logoY":0.6669921875,"logoXNoText":0.6044921875,"logoYNoText":0.5439453125},"id":3564532,"userId":1894539,"count":0,"shareImage":"https://api.vc.ru/achievements/share/3564532"}],"lastModificationDate":1764915985,"isSubscribed":false,"isSubscribedToNewPosts":false,"isMuted":false,"isAvailableForMessenger":true,"badgeId":null,"isDonationsEnabled":true,"isPlusGiftEnabled":true,"isUnverifiedBlogForCompanyWithoutPro":true,"isRemovedByUserRequest":false,"isFrozen":false,"isDisabledAd":false,"isPlus":false,"isVerified":false,"isPro":false,"yandexMetricaId":null,"badge":null,"isOnline":false,"tgChannelShortname":null,"isUnsubscribable":true,"type":1,"subtype":"personal_blog"},"subsite":{"id":200396,"name":"Сервисы","description":"Новые сервисы, обновления инструментов, опыт использования и полезные приёмы.","uri":"/services","avatar":{"type":"image","data":{"uuid":"158fab2d-76c1-5ed8-898a-76ee48d4c795","width":1200,"height":1200,"size":99571,"type":"png","color":"7cdaea","hash":"08183848d81000","external_service":[]}},"cover":{"type":"image","data":{"uuid":"c3fe3abb-6808-527e-9eb1-2b6bb92ea400","width":3840,"height":1120,"size":19502,"type":"png","color":"7cdcec","hash":"","external_service":[]}},"lastModificationDate":1688995401,"isSubscribed":false,"isSubscribedToNewPosts":false,"isMuted":false,"isAvailableForMessenger":false,"isDisabledAd":false,"nickname":"services","isUnsubscribable":true,"badge":null,"badgeId":null,"isDonationsEnabled":false,"isOnline":false,"isPlus":false,"isUnverifiedBlogForCompanyWithoutPro":false,"isVerified":false,"isRemovedByUserRequest":false,"isFrozen":false,"isPro":false,"type":2,"subtype":"community"},"reactions":{"counters":[],"reactionId":0},"isNews":false,"source":null,"clusters":[],"donations":{"amount":0,"isDonated":false},"commentsSeenCount":null}},{"type":"entry","data":{"id":1915635,"customUri":"laboratoriya-kachestva-16-let","subsiteId":1894539,"title":"Нам 16. Мы выросли, но не повзрослели (и в этом сила!!!)","date":1744186785,"dateModified":1744199877,"blocks":[{"type":"text","cover":true,"hidden":false,"anchor":"","data":{"text":"

Сегодня нашей классной \"Лаборатории Качества\" исполняется 16 лет. Это гордость. И это про нас с вами.\n\n👨‍💻16 лет назад всё начиналось с нескольких человек и одной большой идеи — делать тестирование, которое меняет всё.\n\nСегодня у нас — десятки проектов одновременно {и ни одного скучного}, распределённая команда из 100+ специалистов по всему миру, феи {да-да, настоящие}🧚🏻‍♀ и чувство юмора, которое выдержало не один релиз на прод.\n\nЗа 16 лет мы:\n\n🔴протестировали сотни приложений {и некоторые до сих пор снятся по ночам};\n🔴вырастили отличных специалистов {в том числе тех, кто когда-то боялся сломать Jenkins};\n🔴спасли десятки продуктов от багов, после которых «откат» — не про философию, а про выживание;\n🔴доказали, что без офиса можно быть ближе, чем с кабинетом;\n🔴собрали команду, с которой можно спорить на митингах и ржать в рабочих чатах;\n🔴создали резерв, в котором не сидят, а растут!\n\nА главное — мы научились слышать друг друга, поддерживать и не теряться среди задач, спринтов и баг-трекеров.\n\nВ мире, где всё меняется слишком быстро, мы остались собой — живыми, увлечёнными и неравнодушными.\n😊Спасибо вам. Всем.Кто в ЛК много лет. Кто пришёл вчера. Кто держит проект на проде. Кто обучается в резерве. Кто встречает новичков и объясняет, как жить с конфигом автотестов. Кто не боится сложных задач и честных разговоров.\nМы гордимся каждым!\n\nЛаборатория качества — это не просто компания. Это мы с вами. С днём рождения, команда!\n\n💎Нам 16. Всё уже умеем. Всё ещё интересно. Всё только начинается.\n\n\n💃🏻🕺🏻🎉\n\n#QualityLab #ЛабораторияКачества #деньрождениякомпании #опыт #тестирование #партнерство #сотрудничество #бизнес #it #ит

"}},{"type":"media","cover":true,"hidden":false,"anchor":"","data":{"items":[{"title":"","image":{"type":"image","data":{"uuid":"73881f64-baaa-57db-bbd7-7ee1b96fa998","width":1080,"height":1080,"size":588305,"type":"png","color":"0c204e","hash":"","external_service":[]}}}]}}],"summaryContent":null,"isExistSummaryContent":false,"warningFromEditor":null,"warningFromEditorTitle":null,"counters":{"comments":0,"favorites":0,"reposts":0,"views":42,"hits":23,"reads":null,"online":0},"dateFavorite":0,"hitsCount":23,"isCommentsEnabled":true,"isLikesEnabled":true,"isRemovedByUserRequest":false,"isFavorited":false,"isPinned":false,"repostId":null,"repostData":null,"subscribedToTreads":false,"isEditorial":false,"isAudioAvailable":false,"audioUrl":null,"isAudioAvailableToGenerate":false,"commentEditor":{"enabled":true,"who":null,"text":"","until":null,"reason":null,"type":"everybody"},"isBlur":false,"isPublished":true,"isDisabledAd":false,"withheld":[],"ogTitle":null,"ogDescription":"Лаборатория Качества отмечает 16 лет, протестировано сотни приложений, команда из 100+ специалистов, опыт и поддержка, инновации в тестировании","url":"https://vc.ru/services/1915635-laboratoriya-kachestva-16-let","author":{"id":1894539,"name":"Лаборатория Качества","nickname":null,"description":"Тестируем сайты, ПО, приложения и другие IT-продукты на аутсорсинге. NDA. Контакты и подробности о нас: quality-lab.ru","uri":"","avatar":{"type":"image","data":{"uuid":"3672385d-5e78-50ad-9425-fd4867549300","width":2040,"height":2040,"size":2188090,"type":"png","color":"065e84","hash":"","external_service":[],"base64preview":"/9j/4AAQSkZJRgABAQIAHAAcAAD/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/wAARCAAKAAoDAREAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAwQGB//EACYQAAIBAgQFBQAAAAAAAAAAAAECAwQFABESIQYHIjFRExRCYXP/xAAYAQACAwAAAAAAAAAAAAAAAAAEBwACA//EAB8RAQACAQMFAAAAAAAAAAAAAAEAAwIEERITFCFBUf/aAAwDAQACEQMRAD8AyCzcvprlwnNxi92tlHCsjg+vqV9ajZU6dyfAPbDPy1HTtKwd4k69LldQ2uQEjffXE7hny/PBfNgHb4fIe61dUSaI1Mpp061i1nQrEDMhewJyGZ+hiZhyX3K0ZLWYr4j8M0ohjAlcAKPkfGMmE7s//9k="}},"cover":{"cover":{"type":"image","data":{"uuid":"0834afcd-a0e5-55d7-9800-d93ff34c512d","width":1473,"height":480,"size":93718,"type":"jpg","color":"dbeaf0","hash":"","external_service":[],"base64preview":"/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAAKAAoDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAABAMJ/8QAIBAAAgEEAgMBAAAAAAAAAAAAAQIRAAMEEgUxIVFhof/EABUBAQEAAAAAAAAAAAAAAAAAAAQF/8QAFxEAAwEAAAAAAAAAAAAAAAAAAAECEf/aAAwDAQACEQMRAD8A0a4XBPEHK1yGyLjJDi+zOsiZ1nqhvk5CuwGMWAMA7Dz+0vYgsZMt2fdRNm2SSUUk/KQkTLrWf//Z"}},"cover_y":100},"achievements":[{"title":"Год на vc.ru","code":"registration_1_year","description":"Первый год с vc.ru. Получена 24 июля 2025.","previewUuid":"0d11c244-49de-50e7-894e-b9b27945d42b","formats":{"glb":"https://static.vc.ru/achievements/fish.glb","usdz":"https://static.vc.ru/achievements/fish.usdz"},"viewData":{"contentColor":"#C67AA3","textMaxWidth":0.634765625,"textX":0.5888671875,"textY":0.54296875,"logoX":0.5859375,"logoY":0.6669921875,"logoXNoText":0.6044921875,"logoYNoText":0.5439453125},"id":3564532,"userId":1894539,"count":0,"shareImage":"https://api.vc.ru/achievements/share/3564532"}],"lastModificationDate":1764915985,"isSubscribed":false,"isSubscribedToNewPosts":false,"isMuted":false,"isAvailableForMessenger":true,"badgeId":null,"isDonationsEnabled":true,"isPlusGiftEnabled":true,"isUnverifiedBlogForCompanyWithoutPro":true,"isRemovedByUserRequest":false,"isFrozen":false,"isDisabledAd":false,"isPlus":false,"isVerified":false,"isPro":false,"yandexMetricaId":null,"badge":null,"isOnline":false,"tgChannelShortname":null,"isUnsubscribable":true,"type":1,"subtype":"personal_blog"},"subsite":{"id":200396,"name":"Сервисы","description":"Новые сервисы, обновления инструментов, опыт использования и полезные приёмы.","uri":"/services","avatar":{"type":"image","data":{"uuid":"158fab2d-76c1-5ed8-898a-76ee48d4c795","width":1200,"height":1200,"size":99571,"type":"png","color":"7cdaea","hash":"08183848d81000","external_service":[]}},"cover":{"type":"image","data":{"uuid":"c3fe3abb-6808-527e-9eb1-2b6bb92ea400","width":3840,"height":1120,"size":19502,"type":"png","color":"7cdcec","hash":"","external_service":[]}},"lastModificationDate":1688995401,"isSubscribed":false,"isSubscribedToNewPosts":false,"isMuted":false,"isAvailableForMessenger":false,"isDisabledAd":false,"nickname":"services","isUnsubscribable":true,"badge":null,"badgeId":null,"isDonationsEnabled":false,"isOnline":false,"isPlus":false,"isUnverifiedBlogForCompanyWithoutPro":false,"isVerified":false,"isRemovedByUserRequest":false,"isFrozen":false,"isPro":false,"type":2,"subtype":"community"},"reactions":{"counters":[{"id":1,"count":1}],"reactionId":0},"isNews":false,"source":null,"clusters":[],"donations":{"amount":0,"isDonated":false},"commentsSeenCount":null}}],"ogTitle":null,"ogDescription":null,"isAnonymized":true}};