Начало работы для тестировщиков
Навигация по любому новому инструменту может оказаться подавляющим в качестве тестировщика. Существует множество различных элементов и препятствий для получения сборок на ваших устройствах, что в конечном итоге может сделать тестирование приложений разочарованием. Чтобы помочь вам, мы создали простой рабочий процесс в Центре приложений для тестировщиков. Кроме того, мы создали это руководство, чтобы помочь в любых частях тестирования в Центре приложений, которые могут показаться неясными. Мы знаем, что тестирование является важной частью процесса разработки приложений, поэтому мы стремимся обеспечить бесперебойную и успешную работу.
Что такое Центр приложений?
Центр приложений — это решение для непрерывной интеграции, доставки и тестирования для приложений Android, iOS, macOS и Windows. Центр приложений позволяет разработчикам быстрее и с большей уверенностью отправлять приложения за счет автоматизации жизненного цикла разработки.
Центр приложений предлагает множество различных служб, но наиболее подходящим для тестирования является наша служба распространения. Центр приложений позволяет разработчикам выпускать двоичные файлы приложений для вас, тестировщика, по ссылке для скачивания или на портале установки Центра приложений.
В этом документе предполагается, что вы пытаетесь приступить к работе в качестве тестировщика, и вам было предложено протестировать приложение Центра приложений.
Первые шаги
Когда разработчик приглашает вас протестировать приложение, вы должны получить сообщение электронной почты с уведомлением о назначении. Это сообщение содержит кнопку, которая позволяет создать учетную запись Центра приложений, если у вас ее нет. Если у вас есть учетная запись, войдите и просмотрите приложения. После входа в систему действия по установке приложений немного отличаются в зависимости от операционной системы, на которую вы тестируете.
Вы можете создать учетную запись до того, как разработчик официально предложит вам протестировать приложение. Вы можете зарегистрироваться на веб-сайте Центра приложений.
Чтобы приступить к установке приложения, которое вы приглашены для тестирования, выберите один из следующих вариантов:
- Тестирование приложений Android
- Тестирование приложений iOS
- Тестирование приложений macOS
Остановить тестирование
Вы можете прекратить тестирование приложения и удалиться из всех групп рассылки для этого приложения. После этого вы больше не будете получать уведомления для этого приложения и больше не будете иметь доступ к приложению на порталах разработчика и установки в Центре приложений. Чтобы удалить себя из приложения, должны выполняться следующие условия:
- Вы не являетесь участниками совместной работы приложения
- Вы не входите в общую группу для приложения
- Вы не входите в группу AAD для приложения
Если все перечисленные условия применимы к вам, вы можете удалить себя в качестве тестировщика для приложения. Для этого сделайте следующее:
- Перейдите на портал установки Центра приложений на мобильном устройстве.
- Выберите проект приложения, который требуется остановить тестирование.
- В правом верхнем углу экрана щелкните пункт меню с тремя точками.
- Нажмите кнопку Остановить тестирование приложения .
После выполнения этих действий вы больше не будете тестировщиком приложения.
Впервые пробуем App Center и рассказываем о своем опыте
Сегодня, когда в кармане у каждого жителя мегаполиса есть компьютер, который может куда больше, чем долететь до луны, мы пользуемся мобильными приложениями каждый день. Новости, погода, акции, шопинг — все эти функции реализованы в сотнях тысяч приложений. Но если любимое приложение подвисает или крашится — оно быстро перестает быть любимым.

Это статья написана ребятами из WaveAccess
Мы разрабатываем мобильные приложения более 10 лет, и никак не можем позволить себе выпускать продукт, который бажит в руках пользователей. Именно поэтому “качать” команду тестирования и инфраструктуру для нас не менее важно, чем другие области.
Сотни Android-девайсов, iPhone с различными версиями ОС, разная диагональ устройств ставят перед QA-инженерами задачу “отлавливать” дефекты и на реальных мобильных устройствах, и на различных версиях операционных систем. Но прогонять один и тот же ручной сценарий на 10, 20, 50-ти устройствах мало кому под силу. Именно благодаря таким задачам мы прокачали свой навык автоматического тестирования, особенно, на мобильных устройствах. Но будем честны: создать и поддержать инфраструктуру даже с 20-ю реальными девайсами для прогона автотестов — это головная боль.
В этой статье хотим рассказать, как попробовали новый для себя сервис Microsoft App Center для проверки качества разрабатываемого нами приложения на зоопарке реальных девайсов.
Почему встал вопрос использования сервиса
Сейчас мы разрабатываем приложение для сопровождения шоппинга. Проект идет давно: заказчик постоянно предлагает какие-то новые фичи, идет за разработкой только к нам. В приложении уже десятки экранов, от “купить” до различных вариантов сообщений, пушей, функций типа “собери свой лук”. И все это время происходят презентации проекта инвесторам, запуски в новых торговых центрах, так что чем выше скорость релиза (без падения качества продукта) — тем лучше.
До сего времени мы запускали автотесты на ограниченном количестве устройств, которое было в нашем распоряжении (для этого проекта — порядка 30-ти Android-девайсов и “яблок”). Сейчас приложение выходит на новый уровень, аудитория выросла, и качество стало еще более критичным. Встал вопрос об использовании облачного сервиса для прогона автотестов на большем количестве разных устройств.
В процессе релизов хотелось пользоваться всеми современными и доказавшими свою полезность практиками разработки ПО: кросс ревью, непрерывная интеграция, автоматизированное функциональное и модульное тестирование на большом списке девайсов на iOS + Android, сбор аналитики и крешлитики (crashlytics).
Каждую из этих практик мы применяли ранее и по отдельности, и в комплексе. Но с учетом масштабов проекта и большого размера команды, хотелось получить универсальное решение. Пусть инструмент умеет все перечисленное и может в одном месте предоставить возможность управлять состоянием разработки и доставки мобильных приложений для разных платформ и мониторить его.
От каждого из ролей в команде были свои условия: разработчики не хотели менять уже налаженный процесс разработки (репозиторий, билд тул и т. д.), а также переходить на слишком новые, непроверенные инструменты в проде. Инженеры по тестированию мечтали о снижении нагрузки по проверке на зоопарке девайсов, менеджерам и заказчику хотелось удобный интерфейс для мониторинга всего состояния с прозрачным флоу.
Исследование аналогов — довольно важный этап при выборе инструмента. Мы смотрели разные сервисы, предоставляющие такие возможности (для Appium-тестов, например, BrowserStack). В случае с Microsoft App Center нам предоставили триальный период, поэтому у нас была возможность попробовать и понять, что будет с проектом, если уделять качеству чуть больше ресурсов и автоматизировать весь релиз-процесс мобильного приложения для любой платформы одним сервисом. Рассказываем, как это было.
Как настроить iOS app
Итак, воспользовавшись триальным периодом, который не накладывает ограничений в функционале, создаем свое iOS приложение в Microsoft App Center:
Добавляем App Center SDK в проект:
pod 'AppCenter'
После установки подов открываем файл AppDelegate.swift и добавляем следующие строки под своей собственной командой импорта:
import AppCenter import AppCenterAnalytics import AppCenterCrashes
В том же файле добавляем в метод didFinishLaunchingWithOptions следующие строки:
MSAppCenter.start("", withServices:[ MSAnalytics.self, MSCrashes.self ])
Аналогичный процесс — для objective C, полная версия инструкции — здесь.
Билдим!
Переходим во вкладку Build, выбираем наш сервис svc.

Конфигурируем билд. Не забываем подписать, так как это генерирует нам файл приложения формата app, который можно запускать на реальных девайсах:

Готово! Нажимаем кнопку Build now и ждем сборки.
Аналогичная история для Android приложений, инструкция — здесь.
Запускаем первые тесты для iOS
Unit- и нативные тесты для каждой платформы можно включить в сборку (есть галочка). О функционале АТ на разных девайсах рассказываем далее.
Настройка сета девайсов iOS, Android, отправка тестов на сет
Переходим на вкладку Test, Device Sets. Создаем набор девайсов, на которых будем гонять наши тесты. На выбор есть более 250 Android девайсов и более 200 различных iOS девайсов (generation version + iOS version). Подробный список устройств — тут.
Здесь несколько огорчило, что официальный ответ на вопрос, как скоро после релиза появятся новые Apple девайсы, звучит как “1-2 месяца после поступления в продажу”.
Готовим тесты к запуску в App Center (пример для XCUITest) и отправим на запуск. В App Center есть возможность билда только приложения, так что билдить проект тестов все же придется локально у себя на машине или в своем CI.
Shell: # Generate an XCUITest bundle and your iOS application as described above. $ rm -rf DerivedData $ xcrun xcodebuild build-for-testing -derivedDataPath DerivedData -scheme YOUR_APP_SCHEME # Upload your test to App Center $ appcenter test run xcuitest \ --app "" \ --devices DEVICE_SET \ --test-series "master" \ --locale "en_US" \ --build-dir DerivedData/Build/Products/Debug-iphoneos
Appium-тесты
Стоит убедиться, что используемые фреймворки тестов соответствуют поддерживаемым. Кроме того, необходимо использовать драйвер, предоставляемый App Center, а это накладывает свои ограничения по использованию фреймворков (например, Google Giuce использовать не получится).
Билд проекта для пользователей Maven
Шаг 1. Добавляем репозиторий и зависимости
Нужно будет добавить в файл pom.xml репозиторий JCenter.
XML jcenter https://jcenter.bintray.com/
Затем добавляем зависимость для расширений Appium-тестов
XML com.microsoft.appcenter appium-test-extension 1.3
Таким образом, во время компиляции будут доступны расширенные драйверы Android и iOS (которые нужны, прежде всего, для реализации фичи “label”; о ней подробнее в Шаге 4).
Шаг 2. Добавляем загрузочный профиль
Копируем сниппет в свой pom.xml в . Если в pom-файле отсутствует секция , нужно ее создать. Профиль после активации пакует наши тестовые классы и все зависимости в папку target/upload, готовую для загрузки в TestCloud.
Билд для пользователей Gradle
Шаг 1. Репозиторий и зависимости
Убеждаемся, что в build.gradle в корневой папке проекта активирован репозиторий JCenter:
gradle allprojects < repositories < jcenter() >>
Добавляем следующий сниппет в build.gradle в папке приложения:
gradle androidTestCompile('com.microsoft.appcenter:appium-test-extension:1.0')
Начиная с версии Gradle 3.0, androidTestCompile является устаревшим. Вместо него нужен androidTestImplementation.
Шаг 2. Автоматизируем генерацию pom-файла
Чтобы аплоадер заработал, требуется файл pom.xml. Добавляем в build.gradle в папке приложения следующий сниппет, чтобы pom-файл собрался автоматически:
gradle apply plugin: 'maven' task createPom < pom < withXml < def dependenciesNode = asNode().appendNode('dependencies') //Iterate over the compile dependencies (we don't want the test ones), adding a node for each configurations.testCompile.allDependencies.each < def dependencyNode = dependenciesNode.appendNode('dependency') dependencyNode.appendNode('groupId', it.group) dependencyNode.appendNode('artifactId', it.name) dependencyNode.appendNode('version', it.version) >def profilesNode = asNode().appendNode('profiles') profilesNode.append(new XmlParser().parse('https://raw.githubusercontent.com/Microsoft/AppCenter-Test-Appium-Java-Extensions/master/gradleuploadprofilesnippet.xml')) > >.writeTo("pom.xml")
Изменения в тестах
Шаг 1. Добавляем импорты
Импортируйте пакеты в свои тест классы:
Java import com.microsoft.appcenter.appium.Factory; import com.microsoft.appcenter.appium.EnhancedAndroidDriver; import org.junit.rules.TestWatcher; import org.junit.Rule;
Шаг 2. Создаем экземпляр TestWatcher
Добавляем в каждый тест-класс JUnit Rule (или в базовый класс тестов):
Java @Rule public TestWatcher watcher = Factory.createWatcher();
Шаг 3. Меняем тип драйвера
Поменяйте тип драйвера при его объявлении или с AndroidDriver на EnhancedAndroidDriver, или с IOSDriver на EnhancedIOSDriver
Java private static EnhancedAndroidDriver driver;
Шаг 4. Обновляем экземпляры драйверов
Меняем инстансы драйвера таким образом, чтобы строки вида:
Java driver = new AndroidDriver(url, capabilities);
… поменялись на вид:
Java driver = Factory.createAndroidDriver(url, capabilities);
Использование этих драйверов по-прежнему позволит запускать тесты локально без дополнительных модификаций, но в дополнение позволит добавлять “label” на шаги в исполняемом тесте, используя driver.label(«ваш текст»). Текст и скриншот с девайса будут доступны в тест-репорте в Test Cloud. Весьма рекомендуется делать обращение к метке через метод After, поскольку это добавит скриншот последнего состояния приложения в тест-репорт.
Скриншот будет сделан, даже если тест провален. Как правило, в нем достаточно информации, чтобы понять, почему так случилось. Пример реализации в методе After:
Java: @After public void TearDown()
Загрузка в App Center test
Процесс загрузки по шагам:
- Генерируем команду App Center Test upload. Документация (EN) — starting a test run.
- Пакуем тест-классы и все зависимости в папку target/upload
- mvn -DskipTests -P prepare-for-upload package
- Загрузка и запуск тестов начался
По завершении можем просмотреть результаты на каждом девайсе из списка:

Скрины с результатами, логи, отчет
На каждом из iOS или Android девайсов можно просмотреть подробный лог и скриншот для диагностики падения теста:

А также статистику всех запусков за интервал времени:

Правда, доступ к “девайсу” для дебага и инспекции не предоставляется. Если с тестами что-то идет не так и логов недостаточно — все решается только через поддержку. В одном из популярных сервисов по запуску АТ на девайсах — BrowserStack — такая возможность есть, и она встроена в Appium. Можно было бы отдать URL и порт для создания подключения к серверу девайсов.
Выводы
Удивительно, но весь релизный процесс от Continuous Integration до Continuous Delivery приложения обеспечивается в одном месте: Microsoft App Center предлагает CI build, test, deploy to store, analytics, crashlytics.
Попробовав меньше половины предложенного функционала, команда вынесла приятное впечатление. Из очевидных плюсов: не нужно писать поддержку для каждого девайса в виде кода. Ну и прочие плюшки радуют:
- Не нужно поднимать сервер для толпы девайсов.
- Не нужно подключать к этому серверу 100500 девайсов.
- Не нужно жить с глюками андроида когда он включен 24\7.
- Не нужно собирать контейнер под девайс, не нужно менеджить эти контейнеры.
- Не нужно мириться с ограниченностью эмуляторов.
Microsoft App Center нас устроил по изначальным параметрам: он очень не требователен в плане интеграции, но предоставляет все запрашиваемые функции, избавляя от трудной поддержки. Планируем использовать сервис на проекте, так как задачи инструментария при обеспечении качества он решает.
- Блог компании Microsoft
- Разработка под iOS
- Разработка мобильных приложений
- Разработка под Android
- Разработка под Windows
Часто задаваемые вопросы по Центру приложений Visual Studio
Visual Studio App Center позволяет автоматизировать жизненный цикл приложений iOS, Android, Windows и macOS и управлять им. Вы можете чаще и более уверенно поставлять свои высококачественные приложения. Подключите свой репозиторий и за считанные минуты автоматизируйте сборки, проводите тестирование на тысячах реальных устройств в облаке, отправляйте приложения тестировщикам бета-версий и отслеживайте использование в режиме реального времени на основе отчетов о сбоях и аналитических данных. Все в одном месте.
В чем отличие между Visual Studio App Center и HockeyApp?
Центр приложений Visual Studio — это новое поколение HockeyApp. Мы добавляем к возможностям HockeyApp, таким как распространение, аналитика и отчеты о сбоях, возможности непрерывной интеграции и тестирования, предоставляя разработчикам комплексное решение для быстрого и уверенного выпуска приложений. В дальнейшем Центр приложений Visual Studio станет предпочтительным решением Майкрософт для любых нужд распространения и контроля приложений.
В чем отличие между Visual Studio App Center и Xamarin Test Cloud?
Visual Studio App Center является следующим поколением Xamarin Test Cloud, обладает всеми функциями Xamarin Test Cloud и поддерживает дополнительные возможности. Тестовые пользователи имеют доступ ко всем тем же устройствам и функциям, что и в Xamarin Test Cloud, а также к новым функциям, таким как наборы устройств и улучшенные API.
Куда обратиться за поддержкой?
См. нашу Поддержку Центра приложений для получения подробной информации.
Сколько стоит Visual Studio App Center?
Центр приложений Visual Studio можно использовать бесплатно. Одни службы совершенно бесплатны, а для всех остальных предлагается бесплатный уровень и бесплатная пробная версия.
Как выставляются счета за службы App Center?
Услуги Центра приложений оплачиваются по вашей подписке Azure.
Мой исходный код находится в безопасности?
Для сборки кода в App Center используются виртуальные машины. Специально для вашей сборки готовится чистая виртуальная машина. После завершения сборки все данные удаляются. Файлы, загруженные для подписи кода, и пароль для сертификата также надежно хранятся на наших серверах.
Мои тестовые запуски находятся в безопасности?
Да. Хотя App Center запрещает отправку персональных данных, корпорация Майкрософт принимает меры для обеспечения безопасности в ходе тестовых запусков, выполняемых разными пользователями:
- Все приложения, установленные во время тестового запуска, удаляются
- Все локальные хранилища удаляются с устройства
- Для устройств восстанавливаются их параметры по умолчанию
В результате ваши тесты и данные всегда работают на чистом устройстве, и другим клиентам не остается никаких данных.
Как интегрировать существующие службы непрерывной интеграции в App Center?
Мы также создали ряд готовых интеграций, включая этапы сборки Test and Distribute в Azure DevOps и автоматическую интеграцию средства отслеживания ошибок с Azure DevOps и Github.
Какие операционные системы поддерживаются?
В настоящее время мы предоставляем Build, Distribute, Crashes, and Поддержка Analytics для приложений iOS, Android, macOS и UWP. В настоящее время мы предоставляем тестовую поддержку для iOS и Android-приложения.
Дополнительные платформы см. в нашей общедоступной дорожной карте на горизонте.
Мне нужно использовать все службы?
Нет. Несмотря на то, что службы App Center предназначены для формирования интегрированной системы, они также являются полностью модульными, благодаря чему вы можете использовать все необходимые компоненты и продолжать работать с другими службами. Мы предлагаем более 200 API и интерфейс командной строки, чтобы дать разработчикам полную гибкость в выборе необходимых услуг и способов их использования.
Где можно найти план выпуска и обновления продуктов?
Вы можете найти нашу текущую общедоступную дорожную карту здесь. Обратите внимание, что мы постоянно оцениваем потребности наших клиентов, чтобы скорректировать нашу дорожную карту, поэтому, пожалуйста, сообщите нам, что вы хотели бы видеть!
Какие репозитории поддерживаются?
В настоящее время мы поддерживаем репозитории git, размещенные на GitHub, Bitbucket и Azure DevOps. Дополнительные сведения см. в разделе Подключение к репозиторию исходного кода.
Поддерживаются ли подмодули Git?
Для репозиториев, размещенных на сайте GitHub, поддерживаются только подмодули Git по HTTPS. Для репозиториев, размещенных в Bitbucket или Azure DevOps, в настоящее время поддерживаются только подмодули Git без проверки подлинности.
Требуется ли агент сборки Mac для создания приложений iOS?
Нет. App Center автоматически подготавливает безопасные агенты сборки Mac в облаке, поэтому вы можете создавать свои приложения для iOS из любого места и в любое время, независимо от физического Mac.
Какие языки и платформы разработки поддерживаются?
В настоящее время сборка поддерживает приложения, написанные на Objective-C, Swift, Java, C# (Xamarin) и JavaScript (React Native). Дополнительные языки см. в нашей общедоступной дорожной карте на горизонте.
Вы запускаете тесты в эмуляторах?
Чтобы обеспечить максимальную уверенность в реальном качестве, все тесты пользовательского интерфейса iOS и Android выполняются на реальных устройствах.
Какие платформы тестирования поддерживаются?
В настоящее время мы поддерживаем Appium, Calabash, Espresso, Xamarin.UITest и XCUITest. Команды, впервые выбирающие платформу тестирования, обычно предпочитают использовать среду, характерную для их платформы:
- Espresso для приложений Android
- Xamarin.UITest для межплатформенных приложений Xamarin
- XCUITest для приложений iOS
Appium может быть хорошим выбором для команд с опытом работы с Appium или Selenium или для команд с приложениями, отличными от Xamarin, которым нужны кроссплатформенные тесты.
Что такое тест на запуск?”
Тест на запуск — это простой необязательный запуск теста, осуществляемый после успешной сборки в целях гарантии запуска итоговой сборки на реальном физическом устройстве. Тесты на запуск доступны всем пользователям Центра приложений, которые работают со службой сборки и не нуждаются в создании сценариев теста.
Как работает распространение бета-версий?
Тест-инженеры могут установить последнюю версию вашего приложения, используя лишь уведомление по электронной почте и веб-ссылку. Если вы включили наш пакет SDK в свое приложение, то при открытии приложения и доступности для скачивания новой версии тест-инженер получит соответствующее оповещение. Он сможет сразу же обновить приложение.
Вы можете распространять приложение с помощью общедоступного URL-адреса. Если вы включите общедоступную страницу загрузки, любой пользователь, имеющий URL-адрес и UDID в профиле подготовки, сможет получить доступ к приложению и скачать его.
Существует ли ограничение на количество тест-инженеров или пользователей?
Нет, App Center не ограничивает количество пользователей или тестировщиков бета-версий. В iOS Apple накладывает ограничение на количество устройств в зависимости от программы разработчика (см. следующий вопрос).
Существуют ли ограничения по размеру приложений?
Максимальный размер сборки составляет 4 ГБ.
Требуется ли для распространения приложений iOS участие в программе для разработчиков Apple?
Для распространения альфа-, бета-версий или корпоративных сборок на платформе iOS необходимо зарегистрироваться для участия в программе разработчиков Apple. Доступны две различные программы:
Программа для разработчиков Apple позволяет распространять приложения через Магазин приложений. Для целей тестирования действует прямое распространение. Такой вид распространения ограничен 100 UDID на тип устройства (iPhone, iPod, iPad, Apple Watch и Apple TV).
Корпоративная программа для разработчиков Apple предназначена для внутреннего распространения корпоративных или бизнес-приложений без необходимости сбора UDID. Ее нельзя использовать для отправки приложений в Магазин приложений.
Учтите, что ответственность за соблюдение условий Apple возлагается на вас.
Можно ли хранить аналитические данные более 90 дней?
Несмотря на то, что срок действия всех данных аналитики Центра приложений составляет 90 дней, служба аналитики Центра приложений позволяет непрерывно экспортировать все ваши аналитические данные в хранилище BLOB-объектов Azure. Хранилище BLOB-объектов Azure — это служба для хранения больших объемов неструктурированных данных объектов, таких как текстовые или двоичные данные, доступ к которым возможен из любого места по протоколу HTTP или HTTPS. Это хранилище можно использовать для открытого предоставления данных или для хранения данных приложений в частном порядке. Экспорт данных в хранилище BLOB-объектов является хорошим вариантом в случае, когда требуется расширенное хранение, но не обязательно планируется слишком частый доступ к данным. Данные будут экспортироваться каждую минуту, и будет создаваться новая папка. Данные будут сохранены в формате год/месяц/день/час/минута.
App Center предлагает два способа экспорта данных: стандартный экспорт и настраиваемый экспорт. Стандартный экспорт позволит экспортировать данные с помощью одного щелчка и использования подписки Azure, связанной с приложением. Пользовательский экспорт предоставит вам больше гибкости, а конфигурации будут настроены в Azure.
Как выполнить более подробный анализ данных?
App Center Analytics позволяет непрерывно экспортировать все данные Analytics в Azure Application Insights (Azure Monitor). Application Insights представляет собой службу управления производительностью приложений (APM), которая предлагает возможности выполнения запросов, сегментации, фильтрации и анализа использования по отношению к данным событий App Center. Добавив пакет SDK для App Center в свое приложение и экспортировав данные в ресурс Application Insight типа приложения App Center, вы получите доступ к следующим возможностям:
- Аналитика Application Insights. Используйте эффективный язык запросов для анализа необработанных данных событий и создания визуализаций. Вы можете экспортировать результаты запросов в PowerBI или Excel.
- Пользователи, сеансы и события. Узнайте, какое количество пользователей используют каждую страницу и функцию приложения. Затем разбейте эти показатели по стране, браузеру или другим параметрам, чтобы проанализировать результаты.
- Воронки и действия пользователей. Узнайте, как пользователи используют навигацию в вашем приложении. Выявите узкие места. Выясните, как можно повысить коэффициент привлечения и устранить проблемы.
- Хранение. Узнайте, сколько пользователей возвращается к вашему приложению. Выясните, на каком этапе и почему они отказываются от его использования.
- Книги. Вы можете создавать интерактивные книги, объединяющие визуализации анализа использования, запросы аналитики Application Insights и ценную информацию, которой можно поделиться, в команде.
Можно ли интегрировать отчеты о сбоях в средство отслеживания ошибок?
Да. Если вы используете Github или Azure DevOps и имеете достаточные разрешения для настройки средства отслеживания ошибок, Центр приложений может автоматически создавать проблемы на основе критичных событий, чтобы сократить время решения проблем.
Обзор Gigabyte APP Center: Как Gigabyte навязывает проблемную утилиту пользователям Windows 10/11
Закончив тестирование утилит для разгона и настройки AMD Ryzen в среде Windows 7, я перешел к Windows 10, и тут Gigabyte открыто мне начали навязывать свою утилиту APP Center, так почему бы не сделать обзор этой навязанной утилиты?
9 февраля 2023, четверг 08:37
Chimbal [ ] для раздела Блоги
реклама

Вот я и начал работу над второй частью статьи про утилиты для разгона и настройки AMD Ryzen, но загрузив Windows 10 я обнаружил неприятный факт, Gigabyte мне навязывает утилиту APP Center используя возможности самой ОС от Microsoft («легальные» бэкдоры):
![]() |
![]() |
реклама
Конечно же это все навязанное дело требует еще и доступ к интернету, за который собственно платит пользователь, а не корпорации, это так, на заметку, а в моем случае и вовсе мобильный интернет, и знаете, он стоит денег, внезапно, не правда ли? Пользователю навязывают «услугу», но за доступ к «услуге» платить приходится пользователю из личного кармана.
Думаю без лишних слов сейчас заметно моё возмущение. Тем более после установки нужна перезагрузка.
![]() |
![]() |
Каким же образом Gigabyte смогли так навязывать свою утилиту? Все очень просто, в последней версии BIOS появилась настройка «APP Center Download & Install Configuration», и она включена по умолчанию, именно эта вещь и навязывает пользователям Windows 10/11 утилиты от Gigabyte.
реклама
Почему я обратил внимание на это только сейчас? Все просто, моя основная ОС это Windows 7, используя данную операционную систему производитель не может мне ничего навязать, и не может «внедрить» свои уведомления в эту «устаревшую» операционную систему, и я по сути был защищен от подобных действий со стороны производителей.
Стоит ли говорить насколько опасны могут быть подобные «уязвимости» в Windows 10/11 позволяющие навязывать пользователю что угодно со стороны производителей/корпораций?
А если это все дело будет под «прикрытием» вредоносного костыля Microsoft Pluton, что принудительно внедрен в каждый процессор начиная с AMD Ryzen 6000? Который уже запрещает запускать дистрибутивы Linux на современных ноутбуках? Видите ли, они не подписаны сертификатами от Microsoft.
![]() |
![]() |
Так или иначе происходит явное ущемление свободы пользователей со стороны корпораций и производителей.
реклама
Но сейчас я займусь обзором навязанной утилиты APP Center.
Система загрузилась, и утилита запустилась сама, сама же начала искать какие-то обновления, кто её просил это делать? Никто, но она делает, напрягая мобильную сеть предоставляющую доступ к интернету.
![]() |
![]() |
Вот и загрузилось, первая же строка требует чтобы я установил «необходимый системный драйвер из Центра обновлений Windows», какой драйвер? Для чего драйвер? Почему именно через принудительный центр обновлений который у меня в системе вырезан чтобы не ломал ничего без моего ведома своими «обновлениями» в принудительном порядке?
Почему такие важные вещи нужно перекладывать на центр обновлений, от которого люди стараются избавиться чтобы не мешал? Это все очень плохо, я только запустил APP Center, а уже с первого пункта негативные нюансы всплывают.
реклама
Раздел «новые драйверы» предлагает обновить драйверы на чипсет, звук и сеть, почему это не потребовали от центра обновлений Windows? Или критически важные вещи нужно через что попало (центр обновлений Windows) качать, а «что попало» можно и без помощи центра обновлений установить? Совершенно нелогичная логика.
Утилиты от Gigabyte конечно же по умолчанию все отмечены для установки, и попутно «антивирус» отмечен для установки в разделе стороннего ПО, притом что антивирусы могут быть более вредными чем вирусы. Но при этом вполне полезная утилита от Realtek не отмечена для установки по умолчанию, хотя никакого вреда она точно не нанесет системе пользователя, в отличие от антивирусов.
![]() |
![]() |
![]() |
![]() |
В общем убираю галочки со всего что мне не нужно, и начинаю установку, ведь без этого всего в APP Center пустота.
Так как центр обновлений Windows у меня вырезан, чтобы ничего не ломал в системе и не грузил без моего ведома сеть/ЦП/накопители, и не творил что попало в системе, естественно «очень важные» драйверы невозможно установить, ибо нечего такие важные вещи перекладывать в зону ответственности сторонних корпораций.
Тем не менее утилиты скачивает и устанавливает, но часть утилит была скачана с ошибками, вероятно APP Center не понимает что мобильный интернет весьма нестабильная штука.
![]() |
![]() |
Но я просто так не сдаюсь, и настойчиво пытаюсь устанавливать заново, попутно ковыряясь в практически отсутствующих настройках APP Center.
![]() |
![]() |
![]() |
![]() |
Наконец я смог установить всё что было, и APP Center потребовал перезагрузить систему, что поделать, перезагружаю.
![]() |
![]() |
Первым делом запускаю SIV (System Information Viewer), ведь по идее это безобидная утилита которая никак не сможет сделать хуже, чем есть, ведь это же утилита для просмотра системной информации судя по названию.
Но не тут то было, этот. Хм, я не знаю как выразить без ругательной речи. В общем это недоразумение сразу после запуска выдало уведомление, что оно будет выполнять калибровку вентиляторов, и отказаться от этого невозможно, есть только кнопка «OK», просто наглейшее принуждение к действиям против воли пользователя.
Ведь мне не нужно калибровать систему охлаждения, она отлично настроена в BIOS, и прекрасно работает как мне надо, почему нельзя отказаться? Что это за нравы такие у корпораций и производителей пошли?!
В итоге мне пришлось сидеть и минуту слушать рёв серверного вентилятора на весь дом во время калибровки, а ведь он должен работать на минимальных оборотах без лишнего шума, именно так он и работал до того момента, как меня принудили к абсолютно ненужной калибровке вентиляторов в системе.
![]() |
![]() |
Идем дальше, наконец я увидел информацию о системе, весьма скудную информацию. Ради чего вообще делать такие неполноценные приложения? Чтобы узнать название процессора? Разве я и так это не знал во время покупки процессора в магазине? Что за.
Мои профили системы охлаждения ПК конечно же полетели лесом по вине Gigabyte, ведь они создали приложение которое меня принудило к «калибровке СО», и по вине «калибровки» уже настроенные в BIOS профили системы охлаждения были стерты и переназначены стандартными от Gigabyte.
Может нужно сначала спросить пользователя, а нужно ли ему это, прежде чем замещать его настройки стандартными?
![]() |
![]() |
В итоге мне, пользователю, пришлось делать дурную работу по вине Gigabyte что принудили к «калибровке СО», и настраивать заново кривые вентиляторов, чтобы они работали эффективно и тихо, а не жужжали на весь дом как при стандартном профиле.
![]() |
![]() |
Закончив осмотр возможностей утилиты я принялся проверять что значат маленькие кнопочки в заголовке, пожалуй единственная полезная вещь это «плавающее» окно с мониторингом напряжений, но опять же, разве таков должен быть функционал утилиты под названием «System Information Viewer»?
Если уж навязывают утилиту, то она как минимум не должна доставлять проблем пользователю, а это что такое? Мало того что утилита вредит пользователю замещая его настройки, так еще нет подробной информации о железе и параметрах работы каждого узла в системе, так, поверхностно «прошлись» и выдали пользователю, это совсем не круто, это геморрой на голову пользователя запустившего утилиту, чтобы посмотреть информацию о системе.

Ладно, хватит ужасов с SIV, перейдем к RGB Fusion, уж тут хоть не будет принудительных «сюрпризов» без разрешения пользователя?

Я надеялся что без «сюрпризов» обойдется здесь, но нет, и эта утилита без моего разрешения натворила дел.
Так как у меня системная плата Gigabyte B450M H, и возможности RGB подсветки у неё скудные, то и проблем много не доставила утилита, просто сменила заданный мною красный цвет подсветки на синий, мелочь, но неприятно.
Ведь этим действием Gigabyte явно дает понять, что пользователь абсолютно пустое место, и можно издеваться над пользователем как угодно ломая его настройки чем попало.
В общем прошелся я по цветам доступным, и оранжевый цвет не работает, оранжевый и желтый дают одинаковый цвет, тоже недоработка, они там вообще смотрят как работают их приложения? Или так сразу и навязывают «сырой» софт конечным пользователям.
А в конце я заглянул в настройки утилиты, и в обязательном порядке отключил автоматический запуск при старте системы, еще и в автозапуск свои «щупальца» пускают, наглость 80 уровня, спросить пользователя не пробовали? Нужно ли ему это вообще? Или создать помойку в системе пользователя это цель навязанного APP Center?
![]() |
![]() |
![]() |
С ужасом убегая из RGB Fusion я наткнулся на EasyTune, по идее эта утилита должна уметь разгонять систему пользователя, но учитывая предыдущий опыт, меня берут сомнения, а стоит ли вообще это запускать.

Но разве будет обзор полноценным если я проигнорирую EasyTune? В общем запускаю и надеюсь что хоть на этот раз не будет «сюрпризов», слава существующим/несуществующим богам что хоть тут догадались по умолчанию не применять настройки при запуске системы.
![]() |
![]() |
![]() |
И снова я докапываюсь до непонятных кнопочек, ибо Gigabyte не удосужились сделать подсказки для каждой непонятной кнопки, печально это всё.
Автоматический разгон я пожалуй не буду трогать, мало ли чего еще наковыряет этот EasyTune, нет у меня к нему больше доверия.
![]() |
![]() |
Осматриваю разделы, и остаюсь в недоумении, а зачем вообще существует этот EasyTune? Частоту системной шины трогать нельзя, частоту ОЗУ трогать нельзя, переключать PBO/Manual нельзя, управлять лимитами мощности и температурами нельзя, только множитель можно крутить и некоторые напряжения.
Я не понимаю какой смысл в существовании этой утилиты.

Да, множитель можно покрутить, но тут же теряем работу PBO/XFR. Почему, зачем, для чего эта утилита существует вообще? Зачем такие утилиты навязывать пользователям? Какой от них смысл?
![]() |
![]() |
![]() |
Ладно если бы эти бредовые утилиты еще работали адекватно, нет, если вдруг пользователь захочет сбросить настройки «как было», он это не сможет сделать, и вполне может попасть на очередной «сюрприз».
Я нажал кнопку «по умолчанию», что сделает нормальная утилита при нажатии на подобную кнопку? Правильно, вернет параметры к значениям, которые были до манипуляций в утилите.
А что делает EasyTune от Gigabyte? Правильно, сбрасывает параметры до заводского уровня, в том числе напряжения, тем самым в очередной раз демонстрируя что пользователь это пустое место над которым можно издеваться.
Ибо если случайно применить эти параметры, то EasyTune выдаст уведомление с вопросом «перезагрузить систему сейчас?», и принуждает пользователя нажать кнопку «OK», ведь никаких других кнопок нет.
Разумеется система у меня больше не запустилась, она зависает что даже в настройки BIOS невозможно зайти, ведь 1.2в слишком низкое напряжение для модулей памяти в разгоне на частоте 3333 МГц с таймингами от 2933 МГц, вот так Gigabyte мне нагадили, знатно нагадили.
![]() |
![]() |
Конечно, я не так-то прост, и создавая корпус предусмотрел кнопочку сброса CMOS на передней панели, и даже профиль настроек BIOS сохранил на всякий случай с рабочими параметрами.
В итоге я немного времени потратил по вине кривого софта от Gigabyte, и я больше видеть не желаю этот недоделанный EasyTune. Как и сам APP Center который самовольно влез в автозапуск системы.
![]() |
![]() |
Ладно, нужно еще проверить утилиту для обновления BIOS, у меня сейчас установлен BIOS последней версии F63, и в целом ничего плохого не должно произойти.
Вкладка с информацией, ничего опасного, а вот вкладка обновления биоса с серверов уже выглядит опасно, так что проверяю и ничего не находит, пронесло, а то вдруг оно начало бы обновлять прошивку даже не спросив моего разрешения, и в этот момент отключилась бы электроэнергия, 176в в розетке не внушают доверия.
![]() |
![]() |
![]() |
![]() |
Было бы интересно посмотреть, как в таких условиях отработает SFX блок питания на каких 400-500 Вт, когда мой ПК может скушать ~300 Вт в текущей конфигурации, а то меня упрекали когда я собирал компактный ПК из полноценных ATX комплектующих, мол взял бы SFX БП вместо Chieftec BDF-1000C. ITX огрызок вместо mATX системной платы, и собрал бы в ITX корпусе пузатом, что не особо то и компактнее моего самодельного.

Не будем отходить от темы далеко, на этот раз займусь утилитой Smart Backup, я уже не надеюсь что эта вещь будет адекватно работать.

И здесь я уже вижу действительно полезный функционал, можно создать аварийный USB накопитель для восстановления системы, звучит прекрасно после всего пройденного угара и мазохизма.
![]() |
![]() |
Прости меня DOS, твоя жертва не будет напрасна, надеюсь.
Я так и не понял что делать дальше после завершения процесса создания «диска», есть только кнопка «Отменить» и крестик закрывающий окно, почему нет кнопки «выйти/готово/завершить»? Что это за поделка на коленке? Разве так должен выглядеть софт, который навязывают пользователю? Что за очередной плевок в лицо пользователю?
![]() |
![]() |
Не отходя от кассы смотрю что может хваленая система резервного копирования.
И снова я был озадачен сразу же как посмотрел на доступные разделы для резервного копирования, а где же раздел на 100 МБ с загрузчиками Windows 7/10? А где раздел с дистрибутивом Linux и его загрузчиком GRUB? Даже базовые инструменты Windows отлично видят все разделы.
И как мне сделать резервную копию системного NVMe SSD с тремя операционными системами на борту? Да никак, очередной недоделанный мусор от Gigabyte.
![]() |
![]() |
В ужасе бегу перезагружать систему чтобы поскорее проверить «диск» для восстановления системы, думаете это будет дистрибутив Linux с заранее подготовленными удобными инструментами для восстановления системы? Или может еще более удобная и функциональная Windows PE? Нет, обломитесь, я записал абсолютно бесполезную флешку.
DOS. Твоя жертва оказалась напрасна, ведь ты был многократно полезнее этого недоразумения от Gigabyte.
![]() |
![]() |
Заключение
Я больше не могу это кривое навязанное недоразумение от Gigabyte обозревать.
Ладно если бы навязывали действительно полезные и рабочие инструменты, которым действительно нет аналогов, и они действительно уникальны, но то что навязывает Gigabyte пользователям «современных» версий Windows, это просто ужас и безумие.
И я еще критикую кривые утилиты в дистрибутивах Linux, а так же сами дистрибутивы Linux на фоне этого. Этого кривого безумия мягко говоря.
Причем F63 биос далеко не самый новый, он не такой уж и свежий чтобы из этого делать новость, но я обнаружил этот принудительный аттракцион только когда вышел за пределы WIndows 7/Linux и загрузил Windows 10, ибо Windows 7 просто не позволяет навязывать мне со стороны BIOS всякую кривую фигню.
Остался ли я доволен утилитой APP Center и её частями? Нет, я не доволен, эти утилиты от Gigabyte отличный пример, как делать категорически не следует!
За такой софт разработчиков нужно по рукам бить плетью садомазохистов, и не только разработчиков, но и вышестоящих людей ответственных за разработку и распространение этого софта, особенно индивидов, которые решили что нужно выпустить версию BIOS с функционалом что создает навязчивое уведомление в ОС пользователя для установки всего это мракобесия.
А если серьезно, не надо так разрабатывать софт, в конце концов какой смысл от него, если тот же EasyTune практически ничего не умеет? А утилита для просмотра системной информации ломает пользователю профили системы охлаждения.
Благодарю за внимание, больше интересных статей в блоге Hard-Workshop.




















































