Новая программа авито: Скачать Авито на Андроид 2023 бесплатно приложение Avito

Новая программа авито: Скачать Авито на Андроид 2023 бесплатно приложение Avito

Содержание

Сайт и приложение Avito перестали быть доступными для пользователей — РБК

adv.rbc.ru

adv.rbc.ru

adv.rbc.ru

Скрыть баннеры

Ваше местоположение ?

ДаВыбрать другое

Рубрики

Курс евро на 18 февраля
EUR ЦБ: 79,61 (-0,37) Инвестиции, 17 фев, 16:15 Курс доллара на 18 февраля
USD ЦБ: 74,76 (-0,01) Инвестиции, 17 фев, 16:15

Япония запросила заседание Совбеза ООН после ракетного пуска КНДР Политика, 05:26

Польша потребовала от НАТО гарантий для «пост-военной» Украины Политика, 05:15

«Коммерсантъ» узнал о планах «принудить» госкомпании к импортозамещению Политика, 04:56

adv. rbc.ru

adv.rbc.ru

«Коммерсантъ» узнал о просьбе Минтранса к регионам по электросамокатам Общество, 04:48

«Известия» узнали, что запуск «Союза МС-23» к МКС состоится 24 февраля Технологии и медиа, 04:23

Ученые решили пробурить скважину к центру Земли в поисках истоков жизни Технологии и медиа, 04:06

Bloomberg сообщил о беспокойстве США лидерством России на рынке удобрений Политика, 03:38

Научитесь говорить убедительно

На интенсиве РБК Pro вы сразу применяете знания на практике – готовите собственное выступление

Прокачать навык

Сестра Ким Чен Ына пригрозила запускать ракеты в Тихий океан в ответ США Политика, 02:59

«Известия» узнали о создании новой дивизии подводных лодок на Камчатке Политика, 02:38

Бастрыкин заявил о наличии доказательств причастности Киева к «геноциду» Политика, 02:26

FT сообщила о провале попыток Запада настроить Африку против России Политика, 02:09

Умер актер из сериала «Закон и порядок» Ричард Белзер Общество, 02:03

«Известия» узнали о проекте единого закона о тишине Общество, 01:25

КНДР провела второй за два дня пуск баллистической ракеты Политика, 01:24

adv. rbc.ru

adv.rbc.ru

adv.rbc.ru

Сайт и приложение крупнейшей в России онлайн-платформы объявлений Avito перестали открываться у пользователей вечером 14 мая, передает ТАСС. Корреспондент РБК подтверждает проблему при попытке посетить сайт или приложение сервиса.

Так, при попытке зайти на сайт Avito всплывает «ошибка 502», означающая, что сервер не смог обработать полученный запрос по техническим причинам.

В приложении не загружается информация, появляются сообщение о неизвестной ошибке и предложение зайти в приложение позже.

adv.rbc.ru

adv.rbc.ru

Сайт объявлений Avito — самая популярная онлайн-платформа объявлений в России, согласно данным App Annie и SimilarWeb. Ежедневная аудитория платформы составляет 22 млн человек

Компания работает в России 15 лет. Количество активных объявлений на Avito на сегодняшний день превышает 90 млн, а ежедневная аудитория платформы — 22 млн человек.

На фоне западных санкций Avito объявило о выделении в отдельный бизнес из OLX Group. Последняя принадлежит группе Prosus, являющейся подразделением южноафриканского холдинга Naspers (холдинг консолидировал Avito в 2019 году). «OLX Group приняла решение прекратить любое участие в своей деятельности в России. В настоящее время идет процесс разделения, который разделит компании на две независимые организации. Avito будет работать как независимая российская компания, управляемая местной командой менеджеров и собственным советом директоров», — говорилось в заявлении группы.

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

Ask Me Anything / Хабр

Привет! Сегодня в нашем блоге мы проводим уже традиционную секцию вопросов и ответов Ask Me Anything. (До этого были АМА по бэкенду и по android-разработке). Продолжаем хорошую традицию. На этот раз речь пойдёт о разработке под iOS в целом и об особенностях приложения Авито в частности.

Как работается с приложением самого популярного сайта объявлений в России? Спросите у нас! Мы ответим на все комментарии первого уровня, которые появятся здесь до полудня 6 июня по московскому времени. Под катом я представляю семь моих коллег, которые будут с вами на связи, рассказываю немного об iOS-разработке в Авито и о возможных темах диалога.

UPD: Официально мы закрываем АМА, но по возможности обещаем отвечать на комментарии. Спасибо всем за участие!



Евгений Суворов kokax


«Руководитель команды мобильной архитектуры, которая отвечает за техническое качество продукта, удовлетворенность разработчиков разработкой и развитием/поддержкой внутренних инструментов разработчиков. В разработке под iOS с 2011 года, в Авито стал первым мобильным разработчиком в 2014».


Алексей Шпирко truealex


«Руководитель команды, занимающейся ускорением релизов мобильных приложений, построением CI/CD в мобильных приложениях, разработкой инструментов для UI-тестов. В Авито с 2014 года. Про то, чем я занимаюсь, можно подробнее узнать, посмотрев мой доклад для Mobius 2018 по ссылке».


Иван Бондарь ivanbondar


«Руководитель группы разработки мобильных приложений, занимаюсь разработкой под iOS с 2012 года, присоединился к команде Авито 2,5 года назад. Совмещаю роли iOS-разработчика, скрам-мастера и руководителя небольшой кросс-функциональной команды. Помимо iOS немного пишу backend, помогаю другим командам».


Артем Разинов artyom-razinov


«iOS-разработчик, в iOS с 2011 года, в Авито чуть более трёх лет. Занимался всем, в последнее время на 100% погружен в UI-автотестирование — инструменты, CI/CD и все такое. Мои хобби и увлечения: автотестирование, диплинкинг, гибкое API, кодогенерация, хаки, трюки и обманы».



Алексей Кудрявцев WEStor


«iOS-разработчик юнита Мессенджер, мейнтейнер проекта SwiftyVK, звукарь подкаста Podlodka. В Авито с января 2017 года. За это время успел поработать над разными частями iOS-приложения в нескольких юнитах. До Авито работал в небольших стартапах, делал pet-project’ы под iOS и MacOS. Помимо разработки люблю в свободное время побегать, покатать на велосипеде или что-нибудь почитать».


Тимур Юсипов fizmatchel


«iOS-разработчик юнита Mobile Architecture. Разрабатываю под iOS с 2012 года. В Avito почти 3 года. Занимался за это время много чем, прошел путь от фичовой разработки до платформенной.

В последнее время занимаюсь:


  • модуляризацией монолита (разбили таргет с 2000+файлами на 40+ модулей),
  • оптимизацией сборки путем упрощения графа зависимостей между модулями,
  • созданием и сопровождением переиспользуемых разработчиками утилит: обертки над UICollectionView, инструмента для навигации, инструмента для диплинкинга, своих правил Swiftlint, Xcode-шаблонами для быстроты написания нового кода и прочей инфраструктурой,
  • автоматизацией замеров различных технических характеристик (скорость запуска, скорость чистой сборки, утилизация CPU на чистой сборке, размеры модулей, количество контрибьюторов модулей, …).
    Увлекаюсь футболом, коньками и роликами, пляжным волейболом, велосипедом, палаточными походами».

Вадим Смаль vadimsmal


«iOS-разработчик юнита Mobile Architecture. Разрабатываю под MacOS / iOS с 2012 года. В Авито уже 1.5 года. Занимаюсь разработкой решений для увеличения скорости разработки и поддержания качества приложения: toggle, DI, система отправки аналитики, автоматизированные замеры метрик, различные проверки состояния проекта и прочее.

Интересуюсь изучением новых технологий, таких, как Machine learning и blockchain. Изучаю новые платформы, подходы и языки, например, микросервисы на Go».



  • Мы в Avito уделяем много внимания мобильным приложениям. И планируем сохранять этот тренд.
  • Команда iOS-разработчиков использует Swift. Он заменил Objective-C в наших продуктах.
  • Мы инвестируем в развитие и продвижение инженерных практик — CI, CD, Code Review, автоматизация тестирования.
  • Важная особенность iOS-разработки в Avito — модульная архитектура, позволяющая нескольким группам разработчиков развивать крупный проект без коллизий и оперативно реагировать на нужды пользователей.


  • Как устроено наше приложение.
  • Как мы ведём разработку нашего iOS-приложения большой командой.
  • Монорепозиторий для кода: «боли» и профиты
  • Рабочие процессы: код-ревью, пулл реквесты, запуск тестов, проверки.
  • CI/CD.
  • Автоматизированное тестирование.
  • Легаси: как мы с этим боремся.
  • Внутренние решения для разработки: навигация, кодогенерация, feature-toggle, networking, решение для построения списков, DI, аналитика, deep links.
  • Замеры и оптимизация метрик: время сборки/запуска, размер приложения, количество зависимостей, утилизация CPU на сборке.
  • Продуктовая разработка, кросс-функциональность, A/B тестирование.


  • Релизы мобильных приложений в Avito
  • Работа с дизайном в Avito — Артём Разинов и Инесса Воронина
  • Back-end driven UI — Алексей Шпирко
  • Егор Толстой — May the Code Review be with you
  • Marshroute: удобный и расширяемый роутинг в iOS-приложении — Тимур Юсипов
  • Media Picker — to infinity and beyond — Андрей Юткин
    DeepLink’и в Avito — Артём Разинов
  • Mach-O, lldb, dSYM на практике — Владислав Алексеев
  • Метрики всему голова — Вадим Смаль
  • Мессенджер наизнанку, или Как сегодня сделать мессенджер в мобильном iOS-приложении — Максим Соколов
  • Paparazzo. Мощный, стильный, свой. Часть I
  • Paparazzo. Мощный, стильный, свой. Часть II
  • Куда пойти, что читать, с кем общаться на профессиональные темы: дорожная карта для iOS-разработчика

Ждём ваших вопросов в комментариях!

Релизов · avito-tech/Emcee · GitHub

EmCeeResult

28 июн 11:37

бифон

17.0.0

59ff1af Сравнить

EmCeeResultLatest

Latest

В этом выпуске появилась долгожданная функция — генерация результирующего файла xcresult , который можно открыть в Xcode сразу после выполнения тестов. Просто используйте команду runTests и укажите --result-bundle <путь> для создания пакета результатов.

Вы также можете контролировать время жизни вложений xcresult через TestArgFile. entries.testAttachmentLifetime — это может быть deleteOnSuccess , keepAlways , keepNever . Прямо как xcodebuild , да!

Предупреждения

  • В этом выпуске НЕ ПОДДЕРЖИВАЮТСЯ ПЛАГИНЫ . Вы не сможете скомпилировать их против Emcee v17. Пожалуйста, подождите, пока мы не выпустим дальнейшее обновление для этого!
  • Совместное использование Worker не работает между этой версией Emcee и предыдущими версиями. Это связано с тем, что мы перепутали ключ и значение для поля HTTP: раньше это было application/json: Content-Type , который быстро отклоняется; теперь он правильно установлен на Content-Type: application/json .

Мелкие детали

  • Меньше утечек памяти и больше скорости благодаря обновлению HTTP-сервера до Vapor

  • Генерируется меньше журналов! Снова!

  • Emcee теперь убивает xcodebuild более подходящим сигналом SIGINT , что приводит к меньшему количеству искажений результатов.

  • libssh свобода пришла! Emcee не требует установки в вашей системе. Кроме того, рекомендуется использовать аутентификацию на основе ключей.

  • Мы избавились от повторяющихся ошибок от junit. Мы избавились от повторяющихся ошибок из junit.

  • Справка (например, Emcee runTests -h ) стал еще лучше благодаря предоставленной дополнительной информации.

  • Теперь вы можете настроить количество симуляторов для каждого рабочего, локали, клавиатуры, языка с помощью команды runTests . См. Emcee runTests -h .

Присоединяйтесь к нашим Telegram-каналам!

Достойное место для обсуждения и обмена знаниями о ведущем!

  • Русский: https://t.me/emcee_ios

  • Английский: https://t.me/emcee_ios_en

Easy Peasy

17 янв 17:58

бифон

16. 0.0

a665ac0 Сравнить

Easy Peasy

Мы провели ряд интервью с командами, использующими Emcee. Мы получили хорошие отзывы, которые мы использовали для улучшения нашего продукта. В этом выпуске мы сосредоточились на простоте использования и простоте первого знакомства.

Он доступен прямо в README.

Вводим новую команду — runTests . Очень похож на известный runTestsOnRemoteQueue , но он посвящен открытию мира простоты и понятной настройки для большинства пользователей Emcee. Он имеет следующий синтаксис и параметры:

$ Emcee runTests -h

  • --queue : описывает, где должна быть запущена очередь. Этот аргумент может повторяться несколько раз, и в этом случае ведущий будет использовать хосты один за другим, пока ему не удастся запустить очередь. Здесь необходимо указать хотя бы одно значение.
  • --worker : описывает, где должен быть запущен рабочий. Этот аргумент может повторяться несколько раз. Необходимо указать хотя бы одно значение.
  • --device : Устройство для запуска теста, например. Айфон Х . Необходимый. Примечание: iPhone SE поколения может быть сложным в использовании!
  • --runtime : Время выполнения для запуска теста, например. 15,0 . Необходимый.
  • --test-bundle : Расположение .xctest 9Пакет 0011, в котором будут выполняться тесты. Необходимый.
  • --app : Расположение пакета .app . Необязательный. Пожалуйста, обратитесь к нашему руководству, чтобы узнать больше о тестах с хост-приложением.
  • --runner : Расположение XX-Runner.app . Необязательный.
  • --test : Тест для выполнения, например. ClassName/testMethod . Необязательный. Если не указано, ведущий будет запускать все тесты. Вы можете указать несколько тестов для выполнения, например. --test Class/test1 --test Class/test2
  • --retries : Сколько попыток выполнить каждый тест. Необязательный. По умолчанию он будет повторять тесты один раз, если произойдет сбой.
  • --test-timeout : Максимальная продолжительность выполнения теста. Необязательный. Ограничение продолжительности теста по умолчанию составляет 180 секунд.
  • --junit : Путь, по которому должен быть создан файл отчета Junit. Необязательный.
  • --trace : путь, по которому должен быть создан файл трассировки Chrome. Необязательный.

Поясним аргументы --queue и --worker . Это URL-адреса, которые описывают, как подключиться к машине. В настоящее время поддерживается только SSH. Некоторые примеры:

  • --queue ssh://emcee:[email protected]/Users/emcee/emceequeue.noindex : это означает запуск очереди Emcee на хосте queue.example. com , путем аутентификации с помощью имени пользователя emcee и пароля pass . Рабочий каталог будет расположен по адресу /Пользователи/ведущий/emceequeue.noindex .
  • --worker ssh://[email protected]/Users/emcee/emceeworker.noindex?custom_rsa : это означает, что очередь запустит своего рабочего на worker.example.com . Worker будет использовать /Users/emcee/emceeworker.noindex в качестве своего рабочего каталога. Кроме того, Emcee будет использовать emcee в качестве имени пользователя и ключ ~/.ssh/custom_rsa для аутентификации на рабочем хосте. Ожидается, что этот ключ будет присутствовать на узле очереди.
  • --worker ssh://[email protected]/Users/emcee/emceeworker.noindex#/absolute/path/to/custom_rsa : то же, что и выше, но очередь будет использовать ключ из /absolute/ путь/к/custom_rsa .

Emcee теперь содержит встроенный HTTP-сервер, который удовлетворит большинство ваших потребностей. Это значительно упрощает поток и снижает порог входа.

Вы можете передать локальные пути в команду runTests . Предоставляются локальные .app и .xctest 9Пакеты 0011 будут прозрачно размещаться через встроенный HTTP-сервер, что позволит всем работникам загружать артефакты для запуска тестов.

Вы также можете указать локальные пути внутри файла тестового аргумента, который вы передаете в runTestsOnRemoteQueue , они также будут размещены на встроенном сервере. Удобно!

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

Help me Dr.

-h 🍡

Теперь вы можете получить справку по любой команде, набрав -h рядом с ней, например. Emcee -h или Emcee runTests -h . Похоже, Emcee готов к такому хай-теку.

Улучшенные ошибки 💢

Если вы предоставите неверный файл тестового аргумента или JSON-файл конфигурации очереди, Emcee теперь будет печатать удобочитаемые ошибки. Вы будете поражены. Вот одна ошибка на ваше рассмотрение:

 Не удалось декодировать значение для ключевых «записей» в «файле тестовых аргументов»: ключ «xcTestBundle» не найден в записях [0].buildArtifacts
 

Совершенно ясное объяснение того, что пошло не так, не так ли?

Дополнительно

jobId ☃️

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

Режим повтора теста 👯‍♀️

Теперь вы можете указать, как вы хотите, чтобы ваши тесты повторялись в случае их неудачи. В вашем тестовом файле arg записей есть новое поле testRetryMode . Возможные значения:

  • retryThroughQueue — если тест на воркере не пройден, он будет возвращен обратно в очередь. Затем очередь повторит этот тест на других рабочих процессах до указанного количества попыток. Это поведение по умолчанию. Это позволяет выполнять тест на разных хостах, потенциально устраняя проблему неработающей среды (поскольку каждая установка macOS в Universe уникальна).

  • retryOnWorker — если тест не пройден, тот же воркер выполнит повторную попытку.

Исправление симулятора лучше 📲

Произошла ошибка (Боже мой), которая привела к избыточному исправлению симулятора (читай: применить настройки симулятора). Теперь Emcee не будет исправлять симуляторы, если
все пропатчено.

Теперь возможны воркеры без кеша 💳

Есть способ отключить кеш воркеров. В конфигурации сервера очередей, в настройках воркера, рядом с numberOfSimulators есть еще два поля:

  • maxCacheSize — максимальный размер кэша в байтах.
  • maxCacheTTL — максимальный TTL для любого кешируемого элемента, в секундах.

Вы можете установить 0 для этих полей, и это полностью отключит кеш. Это удобно, если вы хотите что-то отладить.

Запретить ведущему очистку вывода Runner 🏃

Теперь вы можете запретить работникам автоматически удалять все тестовые артефакты после завершения теста и закрытия плагинов. В тестовом файле arg записей есть новое поле runnerWasteCleanupPolicy . Возможные значения:

  • clean — значение по умолчанию, значит все будет удалено
  • сохранить — все созданные файлы будут сохранены.

Режим захвата журнала 📝

Теперь вы можете контролировать, какие журналы должны записываться во время тестового запуска. Эти журналы получены из пакетов xcresult после завершения тестов. В тестовом файле arg записей есть новое поле logCapturingMode . Возможные значения:

  • allLogs — все сообщения журнала будут перехвачены
  • onlyCrashLogs — будут перехватываться только те логи, которые выглядят как крашлоги
  • noLogs — логи не будут записываться

Куда без

dyld

Теперь можно динамические библиотеки вставлять в тест. В тестовом файле arg записей есть новое поле userInsertedLibraries . Это массив путей. Эти пути будут переданы в тест как env DYLD_INSERT_LIBRARIES . Объедините это с современными функциями визуализации macOS, с тем фактом, что тесты выполняются через xcodebuild (чтобы он мог расширять __TESTBUNDLE__ и другие строки — посмотрите на man xcodebuild.xctestrun ), и это предоставит вам некоторая дополнительная гибкость для вашего процесса выполнения теста.

  • Ниже приведен универсальный бинарник (arm64 и x64) для вашего удобства! Он даже имеет встроенный libssh , так что вы можете легко его использовать.
  • Если вы загружаете бинарный файл Emcee с GitHub, не забудьте удалить атрибут карантина: xattr -c Emcee
  • Пожалуйста, перестройте свои плагины. API v15 несовместим с v16.

Полный список изменений : 15. 0.0...16.0.0

Пятнадцать релизов Старый

01 дек 11:03

бифон

15.0.0

386ef75 Сравнить

Fifteen Releases Old

Сегодня мы празднуем выпуск Emcee v15 с небольшой задержкой 🥳

Очереди Emcee теперь можно запускать на нескольких хостах, что позволяет при необходимости еще более изящную деградацию. Например, если вы установите хост очереди на обслуживание (выключите его или инопланетяне уничтожат вашу машину), теперь очередь может быть запущена на резервном(ых) хосте(ах), что позволит вам продолжать выполнять свои тесты. Чтобы использовать это, просто укажите несколько хостов очереди в queue_config.json через массив queueServerDeploymentDestinations . Ведущий перебирает хосты в указанном порядке.

  • Теперь вы можете импортировать сертификатов 📜 в брелок симулятора! Спасибо @EvgenyIv96 за реализацию этой функции.
  • xcodebuild теперь удаляет все вложения 📎 из результирующего пакета xcresult , если тест прошел успешно ✅, уменьшая нагрузку на воркеров. Еще раз спасибо @EvgenyIv96 за реализацию этого.
  • Новый баннер жестов клавиатуры iOS 15 ⌨️ можно скрыть, установив didShowContinuousPathIntroduction на true в файле тестового аргумента.
  • Теперь Emcee анализирует файлов xcresult и извлекает из них ошибки тестирования в дополнение к анализу потока результатов. Это значительно улучшает обнаружение ошибок при тестировании. 🌡
  • Стратегия прогрессивного расписания оптимизирована для меньшего количества рабочих. 👷🏻‍♀️👩🏼‍🌾👩🏽‍🏭👩‍🚀
  • Новая стратегия расписания с фиксированный размер ковша позволяет (очевидно) установить фиксированный размер ковша. Это полезно для большего количества рабочих. Например. мы используем эту стратегию в Авито с нашими 80+ работниками. 🖥
  • Новая команда Emcee initTestArgFile создает образец тестового файла arg, который вы можете заполнить своими настройками. Полезно для быстрого старта! 🥩
  • Новая команда Emcee initQueueServerConfig создает образец конфигурации очереди. Опять же, полезно для первоначальной настройки. 🌱
  • Для разделения символов Swift теперь используется динамический буфер. Это устраняет проблемы с обнаружением тестов для некоторых пользователей Emcee. 🦅
  • Наконец, напомню, что ведущий не требует sudo . Вы можете создать стандартного пользователя с ограниченными правами и заставить Emcee использовать его. 🔒 Для этого сценария ведущий теперь проверяет, существует ли папка ~/L/D/CoreSimulator , и создает ее, если она отсутствует.

Только не забудьте установить libssh3 через отличный менеджер пакетов, который использует химию, водоснабжение, манипуляции с жидкостями и доменные термины, связанные с напитками, для описания всех возможных действий и процессов. ☢️

Также не стоит забывать о вполне понятном факте, что чипы Apple Silicon имеют специальный путь назначения для устанавливаемых вещей в этом почетном менеджере пакетов, а на чипах Intel он другой. Таким образом, маловероятно, что вы сможете использовать двоичный файл Intel на Apple Silicon Mac, что связано с экстремальным качеством любого современного программного обеспечения . 💎 Пожалуйста, визуализируйте этот прекрасный смайлик в красном цвете в своем воображении.

Полный список изменений : 14.0.0...15.0.0

Эй, приятель!

06 июл 09:11

бифон

14.0.0

fb51a5f Сравнить

Эй, приятель!

  • Если симуляторы не загружаются, об этом будет лучше, более удобочитаемая ошибка. Это пришло в качестве замены для «сбой процесса xcrun с кодом выхода 69».
  • @venigreat реализовал функцию, позволяющую получить доступ к xcresult связки из плагинов, что позволяет обрабатывать их на ходу. TestContext.environment теперь содержит новую запись, указывающую на пакет xcresult . Вы можете и должны использовать XcodebuildTestRunnerConstants.envXcresultPath , чтобы получить имя этой среды.

  • Кстати, для Emcee

    есть плагин Allure с открытым исходным кодом.
  • @venigreat реализовал следующую функцию: теперь ведущий разрешает доступ к SSH с помощью файлов с закрытыми ключами. Ранее он использовал только аутентификацию на основе пароля. Вы указываете механизм аутентификации через конфигурацию очереди.

  • @venigreat реализовал третью функцию: ведущий теперь может добавлять произвольные HTTP-заголовки к своим сетевым запросам. Это полезно, если ваше хранилище (например, артефактное, нексусное и т. д.) требует аутентификации через заголовки или если ваш сервер хочет отслеживать своих клиентов с помощью некоторого значения X-Fancy-Header .

Мужчина из выращенных бревен

17 мая 11:21

бифон

12.0.0

2d07ee2 Сравнить

Grown Logs Man

В этом релизе мы сосредоточились на добавлении поддержки распределенной системы логирования и использовали для этих целей Kibana. Таким образом, мы решили задокументировать, как работает система ведения журналов Emcee, и дать подробное объяснение того, какие показатели сообщает Emcee.

Global Analytics

Ведущий теперь поддерживает две конфигурации аналитики. Один из них глобальный . Он захватывается очередью при запуске ( queueServerConfiguration.globalAnalyticsConfiguration ), и он используется для сообщения о некоторых глобальных событиях , которые не относятся к какому-либо конкретному заданию. Вот некоторые примеры:

  • Статус функции совместного использования работников
  • Индивидуальные рабочие статусы, видимые очередью (например, активен, молчалив, никогда не запускался)
  • Общее количество поставленных и удаленных из очереди сегментов и тестов
  • Глобальный счетчик текущих заданий в очереди
  • Показатели операций симулятора - продолжительность выделения, продолжительность действия (это продолжительность операций создания, загрузки, выключения и удаления)

Специальная аналитика

Другая конфигурация аналитики — это , специфичная для . Вы предоставляете конфигурацию для него через тестовый файл arg, и он используется для отчетов об аналитических событиях, связанных с заданием. Некоторые, если не все, примеры:

  • Продолжительность обработки задания

  • Продолжительность подготовки задания — сколько времени требуется для подготовки задания, т. е. обнаружения всех тестов и постановки их в очередь

  • События извлечения из очереди и постановки в очередь

  • Проверка событий удаления из очереди и постановки в очередь

  • Длительность обработки сегмента. Каждое задание состоит из тестов, а тесты сгруппированы в сегменты. Эта метрика используется для отчета о длительности этих сегментов.

  • Застрявшие ковши в работе

  • Состояния очереди заданий — количество сегментов, поставленных в очередь и удаленных из очереди, время для удаления сегмента из очереди

  • События обнаружения тестов — количество тестовых наборов, количество тестов и совокупная продолжительность обнаружения тестов

  • Время запуска тестовой метрики

  • Продолжительность предполетной проверки

  • Событие запуска теста

  • Время между тестами

  • Тест завершен, событие

  • Продолжительность испытания бетона

  • Суммарная продолжительность теста

  • Продолжительность теста после полета

  • Бесполезная метрика длительности вызова средства запуска тестов

Стоит отметить, что конкретная конфигурация аналитики НЕ наследует ничего от глобальной конфигурации . Вы должны передать полные конфигурации как через конфигурацию очереди, так и через тестовый файл arg. Следует иметь в виду, что файл тестового аргумента должен содержать конфигурацию аналитики для конкретного задания, поэтому по крайней мере analyticsConfiguration.persistentMetricsJobId может (и, вероятно, должен) отличаться в зависимости от вашей работы (например, модульные тесты, тесты пользовательского интерфейса, полный набор регрессий). , и т. д.).

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

Emcee теперь поддерживает отправку всех своих журналов на общие конечные точки Kibana. Kibana настраивается через [global] AnalyticsConfiguration.kibanaConfiguration . Emcee добавит следующие значения к зарегистрированным сообщениям:

  • имя хоста — хост, который выдал сообщение журнала
  • emceeVersion — версия Emcee
  • emceeCommand — выполняется команда, т. е. дамп , runTestsOnRemoteQueue , distWork и т. д.
  • workerId — воркер, выдавший лог-сообщение.
  • processId и processName — pid и имя процесса самого Emcee, например. 3224 и EmceeWorker_ab33da .
  • идентификатор подпроцесса и subprocessName — pid и имя процесса подпроцесса, который исполнял ведущий
  • xcrunToolName — имя инструмента, который был выполнен через xcrun , например. для xcrun xcodebuild этот ключ будет иметь значение xcodebuild
  • persistMetricsJobId — идентификатор задания из тестового файла arg
  • subprocessPipe — стандартное имя выходного канала для сообщений, регистрируемых подпроцессами, например. стандартный вывод или стандартный вывод . В настоящее время Emcee регистрирует сообщения подпроцесса во время процесса обнаружения тестов, но в будущем может быть принято больше случаев.

Помимо ключей по умолчанию, которые Emcee добавляет автоматически, вы можете добавить свои ключи через [global]analyticsConfiguration.metadata . Например, в нашем CI мы добавляем следующие ключи, чтобы помочь нам отследить журнала , специфичных для задания (поэтому мы добавляем эти значения к конфигурации , специфичной для , через testargfile): ciBranch , ciBuildNumber , ciPullRequestId .

  • --temp-folder теперь необязателен
  • Ведущий теперь удаляет артефакты тестирования и запуска тестов после выполнения корзины. У подключаемых модулей еще есть время для обработки тестовых артефактов (см. TestsWorkingDirectorySupport ), но как только все подключаемые модули завершат работу, Emcee worker очистит все файлы. Это устраняет проблему с утечкой дискового пространства.
  • Emcee анализирует содержимое файла xcodebuild -resultStreamPath по умолчанию и даже пытается добавить журналы сбоев (если xcodebuild выдаст их).
  • Ведущий теперь также собирает глобальные исключения тестов, возникающие перед началом любого теста. Теперь при сбое тестового пакета Emcee добавит эти исключения ко всем тестам, которые должны были быть запущены.
  • Вызовы xcrun simctl spawn теперь ограничены жестко заданным тайм-аутом в 30 секунд, чтобы предотвратить возможные зависания. 30 секунд более чем достаточно, но если нет, свяжитесь с нами.
  • Ведущий теперь отслеживает время ожидания теста, которое может произойти до начала любого теста, после завершения последнего теста и между двумя тестовыми запусками. Это значение тайм-аута контролируется testArgFile.testTimeoutConfiguration.testRunnerMaximumSilenceDuration (https://github.com/avito-tech/Emcee/wiki/Test-Arg-File#testtimeou...

Вот и мы

08 фев 17:08

бифон

11. 0.3

c82ddf0 Сравнить

Here We Go

Это секретная технология, разработанная Apple, которая позволяет вам получать обновления в режиме реального времени о процессе выполнения теста. Все, что вам нужно сделать, это пройти -resultStreamPath to xcodebuild , и он начнет выгружать поток JSON прямо в этот файл.

Мы реконструировали модели из этого файла. Результатами этой работы являются модули ResultStream и ResultStreamModels, если вы хотите использовать их в своих проектах.

Если вы хотите использовать его в Emcee , мы рассмотрели его в разделе ПЕРЕКЛЮЧЕНИЕ ФУНКЦИЙ — правильно, вам нужно подписаться (на данный момент):

  • Добавить EMCEE_USE_RESULT_STREAM = true для вашей тестовой среды (через файл тестового аргумента), и ваши тесты будут выполняться с помощью этой новой высокой технологии.
  • Команда Emcee kickstart теперь корректно запускает рабочего, даже если он никогда не запускался до

  • JSONStream Производительность ЦП улучшена в 3,5 раза (или на 350%). Кроме того, теперь мы используем байты ( UInt8 ) вместо скаляров юникода. Однако поддерживается только кодировка UTF8.

Никогда не поздно сократить избыточное ведение журнала

01 дек 18:08

игнатовв

11.0.2

ae1e5cc Сравнить

Никогда не поздно сократить избыточное ведение журнала

  • Удалить раздражающие журналы ошибок ошибки удаления задания

Никогда не поздно выставить цель TestsWorkingDirectorySupport для общественных нужд

18 ноя 10:08

бифон

11.0.1

eac537f Сравнить

Никогда не поздно выставить цель TestsWorkingDirectorySupport для общественных нужд

  • Открытая цель TestsWorkingDirectorySupport . Используйте его в зависимости от EmceeInterfaces

Бесполезно

06 окт 15:34

бифон

v11.0.0

cebbcef Сравнить

Бесполезно

  • Новая метрика! Бесполезные вызовы xcodebuild . Это событие описывает ситуацию, когда Emcee вызывает xcodebuild для запуска тестов, но никогда их не запускает, вместо этого ожидает чего-то (например, testmanagerd) и затем завершает работу. Обычно это происходит, когда на машине используется слишком много симуляторов. Уменьшение количества симуляторов или перезагрузка компьютера могут помочь уменьшить количество бесполезных вызовов.

  • Фиксированные значения показателей исключения из очереди/постановки в очередь

  • Новая система отчетности! Ведущий теперь может отчитываться перед Statsd! Конфигурация Analytics принимает для него новые настройки.

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

  • Исправлен запуск Emcee на больших машинных фермах с более чем 64 компьютерами. 🤡

  • Теперь снова поддерживается планирование тестов с пустыми рабочими требованиями. 🦵🏻

  • Классы [Synchronous]QueueClient окончательно удалены.

  • JobStateFetcher для получения текущего состояния задания, JobResultsFetcher для получения результатов задания, JobDeleter для удаления задания — это новые API Модуль QueueClient .

Уменьшить

19 авг 08:30

бифон

v10. 0.0

ab902bc Сравнить

Уменьшить

По умолчанию. Подробнее об этой функции читайте здесь.

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

Новая функция! Позволяет отправить команду кикстарта в очередь через REST, чтобы попытаться оживить определенных воркеров. Полезно, если вы завершаете процесс EmceeWorker для обслуживания машины, а затем вам нужно вернуть его в рабочее состояние.

Все метрики теперь имеют версию ведущего

  • Многие поля в тестовом файле аргументов теперь являются необязательными и имеют значения по умолчанию. Самый короткий допустимый тестовый файл arg теперь может быть очень маленьким:
 {
    "Идентификатор задания": "Идентификатор задания",
    "записи": [
    {
        "testsToRun": ["все"],
        "testDestination": {"deviceType": "iPhone X", "runtime": "11. 3"},
        "ТипТеста": "UITest",
        "Артефакты сборки": {
            "appBundle": "http://example.com/App.zip#MyApp/MyApp.app",
            "бегун": "http://example.com/App.zip#Tests/UITests-Runner.app",
            "xcTestBundle": "http://example.com/App.zip#Tests/UITests-Runner.app/PlugIns/UITests.xctest"
        }
    }
    ]
} 
  • Сделано --emcee-version необязательно - генерируется автоматически, когда вы делаете make build .

  • Удален аргумент командной строки --queue-server-destination из команды runTestsOnRemoteQueue . Этот файл был объединен с --queue-server-configuration . Кстати, --queue-server-run-configuration стал --queue-server-configuration (больше никаких глупых run ).

  • --job-id , --job-group-id , --priority , --job-group-priority аргументы были удалены. Все они перенесены в тестовый файл arg.

  • Цель Models удалена из пакета Swift.

Размер буфера разборки (это связано с обнаружением тестов) увеличен с 1 КБ до 10 КБ. Должно хватить "на всех". Если это сработает, дайте нам знать, мы можем реализовать динамический размер буфера.

EmceeAdmin позволяет вам наблюдать и управлять вашими рабочими Emcee через графический интерфейс. Последний выпуск поддерживает сопоставление рабочих Emcee и агентов TeamCity.

Программа Avito Bug Bounty | Open Bug Bounty

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

Open Bug Bounty проводит сортировку и проверку отправленных сообщений. Однако мы никогда не вмешиваемся в дальнейший процесс устранения и раскрытия уязвимостей между Avito и исследователями .

Программа Bug Bounty разрешает только частные сообщения.

В рамках программы участвуют следующие веб-сайты:

m.avito.ru
avito.ru

В следующем разделе представлена ​​информация об уязвимостях, не требующих интрузивного тестирования в соответствии с правилами Open Bug Bounty:

— межсайтовый скриптинг (XSS)
— открытое перенаправление

— Подделка межсайтовых запросов (CSRF)
- Неправильный контроль доступа

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

Уязвимости вне области действия:
- Отчеты автоматических сканеров без надлежащего анализа или демонстрации воздействия на безопасность
- Отчеты об устаревшем/уязвимом ПО без примеров эксплуатации
- Self-XSS влияет только на текущего пользователя
- Отсутствует токен CSRF в формах, где конфиденциальная информация, такая как данные пользователя, не может быть изменена (например, форма выхода)
- Проблемы, связанные с window. opener
- Перехват сеанса, тайм-аут сеанса
- Отсутствуют заголовки HTTP безопасности (X-Frame-*, X-Content-*, CSP, HSTS, HPKP)
- Отсутствуют записи SPF, DKIM, DMARC
- Отсутствуют флаги «HttpOnly», «secure», «SameSite» для неконфиденциальных файлов cookie
. - Возможности исчерпывающего поиска по идентификаторам пользователя/элемента

Требования к испытаниям:

Строго запрещено:
- Поиск уязвимостей в нестандартных и сторонних сервисах, включая платежные шлюзы
- DoS/DDoS/физический доступ/фишинг/атаки социальной инженерии
- Кража учетных записей обычных пользователей и выполнение любых других действий, влияющих на их безопасность
- Публикация любой конфиденциальной информации, обнаруженной во время тестирования безопасности

Возможные награды:

В настоящее время только Kudos.

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

Пока комментариев нет.

19.02.2023 kiyiemniyeti.gov.tr ​​

 19.02.2023 modelo.sc.gov.br

19.02.2023 oldsite.molcpa.gov.np

 19.02.2023 roadsafetyed...n.vic.gov.au

19.02.2023 gainesvilles...wsmemory.com

 19.02.2023 dda.ac

 19.02.2023 archilovers.com

19.02.2023 lse.ac.uk

 19.02.2023 filmibeat.com

19.02.2023 jugantor.com



    19 февраля 2023 г.

Об авторе

alexxlab administrator

Оставить ответ