особенности тестирования десктопных приложений

Тестирование десктопных приложений. Тесты конфигураций десктопного приложения

Перед началом работы с системой или тестируемым приложением необходимо определенным образом настроить его или сконфигурировать. И на этом этапе работы тоже могут быть баги.

Как тестировщику находить их? Давайте разбираться.

С конфигурациями десктопного приложения у тестировщика вяжется два аспекта.

1. Конфигурации самого приложения.

Чтобы тестировать продукт, мы должны знать, как его конфигурировать – то есть как указать правильные настройки, которые необходимы, чтобы ПО работало адекватно, ну или вообще работало. Например, это могут быть параметры базы данных, логин и пароль от нее, профиль пользователя (его права, набор функциональностей, которые ему доступны), набор плагинов, который должна запустить данная конфигурация, и т.д.

особенности тестирования десктопных приложений. GDoEy1ho6Gs. особенности тестирования десктопных приложений фото. особенности тестирования десктопных приложений-GDoEy1ho6Gs. картинка особенности тестирования десктопных приложений. картинка GDoEy1ho6Gs.

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

Например, не может выдать информацию по причине отсутствия доступа к базе данных. Или выдает не тот результат, который мы ожидаем, по причине того, что в конфигурациях указана не та БД (база данных). Поэтому, приступая к тестированию продукта, надо познакомиться не только с интерфейсом и технической документацией, но также разобраться в тонкостях параметров конфигурации.

Параметры конфигурации программного обеспечения указываются обычно в текстовом файле. Его можно изменять вручную или в специальном интерфейсе. Обычно для этого достаточно простого блокнота. Более удобной и продвинутой программой является Notepad++.

2. Конфигурационное тестирование.

Это специальный вид тестирования, направленный на проверку работы программного обеспечения при различных конфигурациях системы (заявленных платформах, поддерживаемых драйверах, при различных конфигурациях компьютеров и т.д.). Оно проводится в ситуациях, когда надо подобрать оптимальные конфигурации для адекватной и бесперебойной работы ПО. Особое значение этот вид тестирования имеет при миграции на другую платформу. В этом случае нам необходимо проверить наш продукт на совместимость с объявленным в спецификации оборудованием, операционными системами и программными продуктами третьих фирм.

ISTQB не выделяет конфигурационное тестирование как отдельный вид. Вышеописанные тесты попадают под определение тестирования портируемости (portability testing).

Чтобы осуществлять такое тестирование, нужно разобраться не с конфигурациями тестируемого продукта, а с конфигурациями окружения. Причем во внимание следует брать не только программные средства (драйвера и библиотеки, стороннее ПО, которое может повлиять на наше, типы и версии ОС, ее конфигурации) но и аппаратные (количество и тип процессоров, объем памяти, параметры сети и сетевые адаптеры).

Определить конфигурацию рабочей машины можно, зайдя в Bios компьютера (как это сделать, можно прочитать, например, здесь). Какие-то типовые советы по определению и изменению конфигурации компьютера на основе информации из BIOS дать нелегко, так как интерфейс и возможности у разных типов и ревизий BIOS отличаются, и бывает, что довольно существенно. Но в интернете об этом есть достаточно информации. Достаточно сделать запрос, упомянув фирму и модель своей рабочей машины.

особенности тестирования десктопных приложений. MOq KauvJYk. особенности тестирования десктопных приложений фото. особенности тестирования десктопных приложений-MOq KauvJYk. картинка особенности тестирования десктопных приложений. картинка MOq KauvJYk.

Конфигурации системы Windows хранятся в реестре Windows. Это сложная древовидная структура, в которой до конца не разбираются, наверно, даже ее создатели, настолько она сложна и объемна. Информации по реестру много, начинающему тестировщику, да и вообще пользователю, стоит помнить, что не стоит вносить какие-либо изменения в реестр Windows, если ты на 100% не уверен, что ты делаешь. Если такая уверенность составляет хотя бы 99% – лучше всего записать, что конкретно в реестре было изменено.

Источник

QA evolution

особенности тестирования десктопных приложений. qwerty2. особенности тестирования десктопных приложений фото. особенности тестирования десктопных приложений-qwerty2. картинка особенности тестирования десктопных приложений. картинка qwerty2.

Особенности тестирования десктопных приложений

Особенности тестирования десктопных приложений

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

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

особенности тестирования десктопных приложений. qwerty2. особенности тестирования десктопных приложений фото. особенности тестирования десктопных приложений-qwerty2. картинка особенности тестирования десктопных приложений. картинка qwerty2.Особенности тестирования десктопных приложений

Основные особенности тестирования десктопных приложений от веб-приложений заключаются в следующем:

ПараметрDesktop приложениеWeb приложение
Доступ к сети Internetне требуетсянеобходим. исключение: некоторые приложения могут временно работать автономно
Установка/обновлениеДолжно быть развёрнуто или установлено.Единовременная настройка. Одна установка для всех пользователей.
Интерфейс взаимодействияСтандартные интерфейсы, стандартное взаимодействиеРазнообразный интерфейс взаимодействия.

Плюсы — разнообразие реализации, минусы, сложности — кроссбраузерная совместимость. Решается применением библиотек на JavaScritp, внедрением стандартов.

Совместимость с устройствамиЗависимость от платформы. Исключение — кроссплатформенные приложения.В большинстве случаем — платформо-независимое.
Анимация, графикаБыстрая, быстрый откликОтносительное медленный отклик, связанный с передачей данных по сети.
МедиаНезначительные проблемы с аудио и видео.Проблемы. На данный момент всё реализуется через Flash. Но в разработке стандарт HTML5, который подразумевает поддержку аудио и видео на уровне браузера.
ШрифтыПрисутствуют только те шрифты, которые установлены у пользователяЛюбые шрифты — есть возможность подгрузки необходимого шрифта через Internet
Поиск по контентуНет, если только не реализовано на уровне приложения.Да есть. Причём можно организовать свой поиск, но и воспользоваться сторонними сервисами, к примеру запрашивать данные у Google.
РасшариваниеЕсли только дополнительно настроитьИзначально веб-приложения(большинство) настроены на совместный доступ
РазработкаПод каждую платформу есть свои инструменты, зачастую под каждую платформу приходиться писать свою версию.Всё выполняется на сервере, пользователя не волнует как там исполняется всё на сервере. Кроссплатформенно, нужен только браузер. Инструменты, софт на сервере зачастую кроссплатформенный.
Desktop приложениеWeb приложение
МасштабыПовсеместноПока что web-приложения не столь популярны. Но темпы роста популярности(в куче с «облаками») велики. Уже сейчас многие переходят на хранение документов на Google Docs и прочие сервисы.
ТестированиеПроизводится QA, группой QA..По сути всё так же. Только открытость(расположение в сети) данного рода приложений позволяет привлечь бОльшее количество QA. Сотни, тысячи, миллионы. В результате бОльшее покрытие тестами и более быстрое обнаружение уязвимостей и некорректной работы софта.

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

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

Выполняя тестирование установки проверяется:

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

Выполняя тестирование удаления проверяем:

Источник

FlaNium: как сделать тестирование Desktop-приложений под Windows проще

На рынке так много программных продуктов для тестирования, что может показаться, будто для всего найдется готовое решение и нет необходимости тратить время и усилия на разработку инструментов тестирования. На самом деле это не так. Мы в «ЛАНИТ Экспертизе» убедились в этом, когда появилась задача тестирования Desktop-приложений, и теперь делимся с вами опытом.

особенности тестирования десктопных приложений. image loader. особенности тестирования десктопных приложений фото. особенности тестирования десктопных приложений-image loader. картинка особенности тестирования десктопных приложений. картинка image loader.

Источник: kotomatrix.ru

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

В отличие от автоматизации WEB, API или мобильных приложений, тестирование Desktop в некоторой степени – «экзотика», и на это есть несколько причин:

Анализ готовых инструментов

Обзор предлагаемых решений показал, что Open source продуктов не так уж много. Сначала мы испытали Winium – Automation framework for Windows platforms.

Winium – это фреймворк для тестирования Desktop Windows приложений на базе Selenium. Он обладает всеми основными требованиями, которые были необходимы для работы с предстоящим проектом:

Следующим, что показалось нам интересным в плане возможностей, оказалась библиотека FlaUI. Библиотека была написана на C# и не имела какого-либо API для взаимодействия извне. По сути это некая оболочка над библиотеками автоматизации Microsoft Windows Automation API, которая упрощает написание тестов. В отличие от Winium данная библиотека обладает полным функционалом взаимодействия с WinForms и WPF-приложениями, но требует написания тестов на языке C#. Поскольку у нас уже был готовый фреймворк тестирования, реализованный на языке Java, данная библиотека не удовлетворяла наши потребности.

Дальнейший анализ инструментов тестирования показал, что наиболее оптимальный вариант – это реализация своего инструмента. Имеющиеся продукты обладали теми или иными серьезными недостатками, а комбинировать несколько решений не представлялось возможным. Так как абсолютно все Open source решения использовали взаимодействие со стандартной библиотекой Windows Automation API, то было принято решение взять за основу ядро FlaUI Core, построенное на основе взаимодействия с данной библиотекой, и обладающее полным функционалом взаимодействия с элементами тестируемого приложения. Затем добавить поддержку Selenium REST API, аналогично Winium. Так родился проект FlaNium.

Что представляет из себя FlaNium

На данный момент в состав проекта входят пока только два компонента.

FlaNium.Desktop.Driver – основной компонент, представляющий из себя драйвер взаимодействия с тестируемым приложением посредством Windows Automation API и использующий протокол взаимодействия Selenium REST API.

FlaNium.WinAPI Java-библиотека, расширяющая протокол Selenium REST API и добавляющая дополнительные возможности по настройке и взаимодействию с FlaNium драйвером. Также данная библиотека позволяет типизировать стандартный Selenium WebElement и привести его к компонентам тестируемого приложения, добавляя дополнительные методы взаимодействия, характерные определенному типу элемента.

Рассмотрим пример работы с FlaNium драйвером на базе Selenium Java

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

Перед началом работы с FlaNium драйвером необходимо загрузить последнюю версию драйвера, а также прописать следующие зависимости в pom.xml:

Далее производим настройку и инициализацию драйвера:

После получения экземпляра FlaniumDriver можно осуществлять поиск контролов приложения и взаимодействовать с ними через стандартные методы библиотеки Selenium.

Есть возможность поиска элементов по XPath, Name, Id (AutomationId) и ClassName, а также поддерживаются пять параметров поиска с помощью XPath – AutomationId, Name, ClassName, HelpText, ControlType.

Для более комфортной работы лучше воспользоваться такими инструментами как FlaUInspect, UISpy и подобными, так как они значительно упрощают написание тестов приложения, позволяя визуально отобразить структуру и параметры элементов приложения. Данные инструменты также позволяют понять, как можно обратиться к различным элементам или какие паттерны поддерживает конкретный из них.

Благодаря расширению протокола Selenium есть возможность типизировать любой WebElement и получить дополнительные возможности для работы. Для этого необходимо создать экземпляр требуемого класса и передать WebElement в качестве параметра:

Рассмотрим на примере, для чего нужна типизация и что нам даёт расширение протокола Selenium. Возьмем для примера выбор значения из выпадающего списка:

На рисунке ниже изображено тестируемое приложение (слева) и инспектор (справа):

особенности тестирования десктопных приложений. image loader. особенности тестирования десктопных приложений фото. особенности тестирования десктопных приложений-image loader. картинка особенности тестирования десктопных приложений. картинка image loader.

У нас есть элемент ComboBox, согласно инспектору, доступа к элементам списка у нас нет, чтобы его получить необходимо раскрыть список нажав на кнопку «Открыть».

особенности тестирования десктопных приложений. image loader. особенности тестирования десктопных приложений фото. особенности тестирования десктопных приложений-image loader. картинка особенности тестирования десктопных приложений. картинка image loader.

После раскрытия списка мы получаем доступ ко всем вложенным элементам и можем осуществлять поиск и выбор необходимого элемента.

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

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

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

Мы не изобретали ничего кардинально нового, но взяв в основу преимущества Winium и FlaUI, скомпоновали продукт с удобным универсальным интерфейсом и широкими возможностями взаимодействия с тестируемым приложением. Удалось объединить протокол Selenium REST и библиотеки Windows Automation API.

Давайте рассмотрим, чем же обязан FlaNium этим двум проектам:

особенности тестирования десктопных приложений. image loader. особенности тестирования десктопных приложений фото. особенности тестирования десктопных приложений-image loader. картинка особенности тестирования десктопных приложений. картинка image loader.

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

Поскольку драйвер использует универсальный протокол взаимодействия, стало возможным использовать уже имеющийся фреймворк тестирования с некоторыми изменениями. Была добавлена работа с элементами посредством библиотеки FlaNium.WinAPI и реализована логика работы с конкретным тестируемым приложением. Также удалось избежать сложностей при работе с элементами приложения, поскольку используется полноценная библиотека взаимодействия и не возникало ситуаций, когда нет доступа к какому-либо параметру элемента.

Кроме всего перечисленного, внедрение данного драйвера позволило отказаться от вендорского ПО для тестирования, сократив стоимость автоматизации и её поддержки на значительную сумму, а также унифицировать стек технологий и требования к квалификации автоматизаторов.

Мы не останавливаемся на достигнутом и продолжаем развивать данный проект. Помимо взаимодействия с приложениями посредством Windows API ведется разработка технологии взаимодействия с приложением «изнутри» посредством инжекта исполняемой библиотеки в код тестируемого приложения. Данная технология необходима, например, для полноценного тестирования Delphi приложений, чего нельзя добиться с помощью стандартного Windows API.

Источник

Desktop приложения что это

особенности тестирования десктопных приложений. qwerty2. особенности тестирования десктопных приложений фото. особенности тестирования десктопных приложений-qwerty2. картинка особенности тестирования десктопных приложений. картинка qwerty2.

Особенности тестирования десктопных приложений

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

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

особенности тестирования десктопных приложений. qwerty2. особенности тестирования десктопных приложений фото. особенности тестирования десктопных приложений-qwerty2. картинка особенности тестирования десктопных приложений. картинка qwerty2.Особенности тестирования десктопных приложений

Основные особенности тестирования десктопных приложений от веб-приложений заключаются в следующем:

ПараметрDesktop приложениеWeb приложение
Доступ к сети Internetне требуетсянеобходим. исключение: некоторые приложения могут временно работать автономно
Установка/обновлениеДолжно быть развёрнуто или установлено.Единовременная настройка. Одна установка для всех пользователей.
Интерфейс взаимодействияСтандартные интерфейсы, стандартное взаимодействиеРазнообразный интерфейс взаимодействия.

Плюсы — разнообразие реализации, минусы, сложности — кроссбраузерная совместимость. Решается применением библиотек на JavaScritp, внедрением стандартов.

Совместимость с устройствамиЗависимость от платформы. Исключение — кроссплатформенные приложения.В большинстве случаем — платформо-независимое.Анимация, графикаБыстрая, быстрый откликОтносительное медленный отклик, связанный с передачей данных по сети.МедиаНезначительные проблемы с аудио и видео.Проблемы. На данный момент всё реализуется через Flash. Но в разработке стандарт HTML5, который подразумевает поддержку аудио и видео на уровне браузера.ШрифтыПрисутствуют только те шрифты, которые установлены у пользователяЛюбые шрифты — есть возможность подгрузки необходимого шрифта через InternetПоиск по контентуНет, если только не реализовано на уровне приложения.Да есть. Причём можно организовать свой поиск, но и воспользоваться сторонними сервисами, к примеру запрашивать данные у Google.РасшариваниеЕсли только дополнительно настроитьИзначально веб-приложения(большинство) настроены на совместный доступРазработкаПод каждую платформу есть свои инструменты, зачастую под каждую платформу приходиться писать свою версию.Всё выполняется на сервере, пользователя не волнует как там исполняется всё на сервере. Кроссплатформенно, нужен только браузер. Инструменты, софт на сервере зачастую кроссплатформенный.Desktop приложениеWeb приложениеМасштабыПовсеместноПока что web-приложения не столь популярны. Но темпы роста популярности(в куче с «облаками») велики. Уже сейчас многие переходят на хранение документов на Google Docs и прочие сервисы.ТестированиеПроизводится QA, группой QA..По сути всё так же. Только открытость(расположение в сети) данного рода приложений позволяет привлечь бОльшее количество QA. Сотни, тысячи, миллионы. В результате бОльшее покрытие тестами и более быстрое обнаружение уязвимостей и некорректной работы софта.

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

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

Выполняя тестирование установки проверяется:

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

Выполняя тестирование удаления проверяем:

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

И так, сегодня 2010 год. Мир ИТ динамичен, как ничто другое. Всё меняется. Вот и в мире программных продуктов происходят заметные изменения. Всё бОльшую роль играют веб приложения. Этот вид приложений появился не сразу. Сначала были просто статичные сайты, после в сайты начали внедрять скрипты. Сложность сайтов начала возрастать. И вот, не успели моргнуть глазом, как «сайты» стали таким же сложным программным продуктом, как и обычные десктоп-приложения. Сайтами их уже язык не поворачивается назвать — это уже приложения. Уже есть инструменты для создания таких приложений, паттерны проектирования, освоенные практики. А тут ещё «облака». Всё чаще люди переходят с Word на Google Docs. Уже приятнее и удобнее пользоваться веб-интерфейсом для просмотра почты(GMail). Всё чаще и чаще появляются разный веб-софт, сервисы.

Произведём сравнительный анализ приложений.

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

Под веб-софтом будет иметь ввиду приложения, доступ к которому осуществляется через веб-интерфейс посредством браузера.

«То о бэнтли я мечтал, то о мазерати,
То рыбалка, то футбол, то с друзьями пати…»
Группа Жуки

​Захотелось мне что-то провокационной статьи, так сказать взбодрить чем-то наше профессиональное сообщество. Хватит заумных статей и философских рассуждений. Итак, делимся на две команды: «любители Соса-Cola – горнолыжники – виндсерферы» против «любители Pepsi – сноубордисты – кайтеры». Счет на табло 0-0, начинаем!

Правила игры и критерии оценок

Сначала давайте определимся, что же будем считать десктопным приложением, а что же веб-клиентом:

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

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

Для простоты будем считать, что каждое удачное попадание – 1 очко, т.к. бессмысленно сравнивать, что важнее мобильность или безопасность.

Надеюсь, разобрались и можно начинать «играть». Звучат гимны команд, понеслась…

Первый период

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

Как правило, обоснования такие:

Безопасность и надежность – очень серьезный вопрос. Некоторые организации принципиально не хотят и не предоставляют возможность работы в корпоративных системах за пределами своего домена. Необходимость применения средств криптографической защиты информации (СКЗИ) и электронной подписи (ЭП) уже давно никому доказывать не надо, за нас это делают регуляторы. Для использования данных технологий необходимо обращаться к сторонним библиотекам, не все веб-приложения это «любят» и имеют ограничения. Стабильность работы самих браузеров также является потенциально узким местом, причем повлиять на это разработчик бизнес-приложения может не всегда. Оффлайн работа, объективно, чаще и проще реализуются с использованием десктопных приложений. В принципе отдельных организаций пока еще пугает работа в браузере (да-да в том самом, в котором сотрудники просиживают часами в социальных сетях, выкладывая туда всю свою подноготную). Это прорыв по флангу и счет 1-1. Звучит свисток, первая половина игры закончена, команды уходят в свои СЭД закрывать накопившиеся поручения.

Второй период

Все покупатели хотят видеть «свой» продукт, отличный от множества других. Конечно, сложно на это надеяться, покупая массовый коробочный продукт. А сделать его «под заказ» значительно дороже и рисково. Но только не в IT области.

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

Функциональность – важнейшее требование к любому программному продукту. Исторически считается, что десктопные приложения более функциональны и эргономичны. Если пытаться разрабатывать веб-клиент с нуля, то так оно и будет. Но с годами были разработаны целые интерфейсные библиотеки, позволяющие творить «чудеса»:

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

Современный пользователь компьютера не меньше времени проводит в браузере, чем тратит его на работу с десктопным приложением. И первый вариант работы сложнее ему не кажется. Зато возможность масштабирования в браузере, отдельным категориям пользователей, приносит ощутимую пользу. Опасность у ворот команды веб-клиента была устранена. Счет по-прежнему 2-1.

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

Разрабатывая веб-приложения с соблюдением стандартов можно надеяться, что программное обеспечение будет корректно работать во всех браузерах, по крайней мере, в первой пятерке. Чуда тут не происходит, и существует масса нюансов связанных с различной интерпретацией одной и той же разметки. Разработчики каждый день видят в системах баг-трекинга заявки из разряда «функция А не корректно работает в браузере Б, а в остальных браузерах все ОК». Но эти труды стоят получаемых бонусов.

Когда пользователь заходит на рядовой публичный сайт в Интернете он надеется увидеть корректное представление страниц с сохранением всей заложенной функциональности. Причем, посетитель сайта не хочет знать «под какие устройства» сайт создавался (стационарный компьютер или ноутбук, планшет или смартфон), это его вообще не должно беспокоить. Почему же ровно также не рассуждать пользователю корпоративной информационной системы. Зачем пользователю, находящемуся вне офиса и имеющему на руках планшет за 1000$ переживать, что он не сможет исполнить поручение, выданное ему в СЭД. Надо ли сотруднику при выборе планшета изучать вопрос, а сможет ли он конкретно с этого планшета (с его операционной системой), корректно работать в десятках корпоративных систем своей организации. А если завтра он купит другой планшет (с другой программной платформой), система на нем будет ровно такой же, к которой он привык или уже другой, а придется что-то заново скачивать и устанавливать?

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

Послесловие

После матча болельщики еще долго спорили, обсуждали острые моменты и не объективное судейство, но счет на табло уже ничто не изменит. Ставки сделаны господа, ставок больше нет!

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *