Русский
Русский
English
Статистика
Реклама

Плагин

Recovery mode Nemezida DNT

26.03.2021 22:10:30 | Автор: admin

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

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

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

В этом посте хотим рассказать о стартапе который хочет решить эту задачу.

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

Проект Nemezida DNT занял призовое место в недавно завершившемся Хакатоне Demhack 2, посвященному теме Приватность и доступность информации.

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

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

На данном этапе у продукта следующие функции:

Режим защиты "Перископная":

- Fingerprint;

Режим защиты Рабочая:

- Fingerprint;

- Cookie.

Режим защиты Предельная:

- Fingerprint;

- Cookie;

- Geo;

- Антивирусная проверка ссылок;

- Подмена информации об установленных плагинах;

- Проверка репутации посещенных сайтов.

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

При переходе в режим "Настройки", пользователь может выбрать один из трех режимов работы.

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

Работа плагина поддерживается в нескольких десятках браузерах, например, в таких, как: "Google Chrome, Яндекс Браузер, Opera и других ".

Плагин помогает частично обеспечить исполнение 23 статьи Конституции РФ и пунктов 152 ФЗ О персональных данных и Европейского закона о защите персональных данных "GDPR", таким образом решение нацелено защитить не только домашнего, но и корпоративного пользователя.

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

А, как думаете, Nemezida DNT мог бы быть полезен домашним и корпоративным пользователям? Какие бы хотели видеть функции? Давайте подискутируем в комментариях.

Подробнее..

Recovery mode Nemezida DNT плагин, для защиты от сбора информации

26.04.2021 08:11:20 | Автор: admin

Здравствуй, уважаемый читатель!

Многие из нас слышали о слежке за пользователями в интернете и о сборе персональных данных, некоторые сталкивались с этим не понаслышке.

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

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

Согласно результатам исследованияEFF (Electronic Frontier Foundation), уникальность отпечатка браузера очень высока, и он содержит в себе нижеописанные данные:

  • user-agent (включая не только браузер, но и версию ОС, тип устройства, языковые настройки, панели инструментов и т.п.);

  • часовой пояс;

  • разрешение экрана и глубину цвета;

  • supercookies;

  • настройки cookie;

  • системные шрифты;

  • плагины к браузеру и их версии;

  • журнал посещений;

  • другие данные.

    Если говорить о статистике, то только раз на 286 777 случаев случается полное совпадение отпечатков браузеров двух разных пользователей.

Согласно ещеодному исследованию, точность идентификации пользователя при помощи отпечатка браузера составляет 99,24%.

Рассмотрим вершину айсберга и приведём простые примеры, что может случиться с собираемыми о вас данными:

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

сбор данных для показа рекламы;

сбор данных для продажи организациям;

сбор данных для осуществления незаконных действий;

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

сбор данных для кражи и мошенничества;

многое другое.

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

Если еще сильнее углубиться в данную проблему, то какие данные могут утекать не только у обычных домашних пользователей, но и у сотрудников компаний? И к чему это может привести? Чтобы ответить на этот вопрос, предлагаю ознакомиться с рисунком 1.

Рисунок 1 Схема формирования цифрового портретаРисунок 1 Схема формирования цифрового портрета

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

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

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

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

Многие компании и их сотрудники становятся уязвимыми для целенаправленных ATP-атак, а это уже влечет за собой более крупные риски и ущерб. Готовы ли мы принимать эти риски?

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

понижение заработной платы;

лишение премии;

увольнение с работы;

финансовые и репутационные риски организации.

На рисунке ниже вы можете ознакомиться с данными компании PositiveTechnologies за 2019 год и сделать выводы о типах украденных данных. Для статистики были взяты данные за 2019 год, так как отчет за весь 2020 год от PositiveTechnologies еще не сформирован.

Рисунок 2 Типы украденных данных за 2019 годРисунок 2 Типы украденных данных за 2019 год

Этот вопрос мы прояснили, но давайте постараемся ответить на вопрос А как эти данные крадутся ещё?. Для ответа на этот вопрос мы обратимся к статистике от той же организации и рассмотрим ее на рисунке 3.

Рисунок 3 Способы распространения ВПОРисунок 3 Способы распространения ВПО

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

Для решения этих проблем была начата разработка двух версий продукта Nemezida DNT:

Nemezida DNT Enterprise Edition версия продукта, созданная для более глубокой защиты компаний и корпоративного пользователя.

Nemezida DNT Home Edition бесплатная версия для домашнего пользователя с функцией режима защиты Перископная. Начиная с режима защиты Рабочая, продукт будет монетизироваться.

На рисунке 4 вы можете ознакомиться c функциями продукта, которые планируются к реализации, часть из них уже реализованы.

Рисунок 4 Набор функций в Nemezida DNTРисунок 4 Набор функций в Nemezida DNT

На текущий момент у нас реализован следующий функционал:

подмена Fingerprint;

подмена cookie;

подмена user agent;

VirusTotal;

Cisco Talos.

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

Особенность нашей разработки заключается в мультифункциональности, она показана на рисунке 5.

Рисунок 5 Особенности Nemezida DNTРисунок 5 Особенности Nemezida DNTРисунок 6 Список поддерживаемых браузеровРисунок 6 Список поддерживаемых браузеров

Нашими дизайнерами было создано несколько тем для нашего плагина, Home Edition и Enterprise Edition. На рисунке 7 Вы можете ознакомиться с Home Edition темой нашего плагина, она будет доступна по умолчанию для всех режимов защиты, но сменить ее можно будет на другую, только имея лицензию с уровня защиты Рабочая.

Рисунок 7 Дизайн Home EditionРисунок 7 Дизайн Home Edition

Для версии Nemezida DNT Enterprise Edition была разработана тема в трех тонах: Белый, Черный, Синий, с которыми вы можете ознакомиться на рисунках 8, 9 и 10.

Рисунок 8 Белая тема Enterprise EditionРисунок 8 Белая тема Enterprise EditionРисунок 9 Черная тема Enterprise EditionРисунок 9 Черная тема Enterprise EditionРисунок 10 Черная тема Enterprise EditionРисунок 10 Черная тема Enterprise Edition

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

Многие интересовались, на каком стеке мы ведем разработку нашего продукта, ответ на этот вопрос находится на рисунке 11.

Рисунок 11 Используемый стек технологийРисунок 11 Используемый стек технологий

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

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

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

Спасибо за внимание!

Подробнее..

Перевод Код-ревью в IDE интеграция между Space и IntelliJ IDEA 2021.1

08.04.2021 20:08:42 | Автор: admin

Привет, Хабр!

Вчера вышло обновление IntelliJ IDEA 2021.1. В него вошла интеграция с JetBrains Space, которая позволяет использовать любую IDE на платформе IntelliJ для код-ревью: назначать ревью и управлять ими, просматривать и добавлять комментарии, принимать изменения. Как это работает, мы подробно расскажем в этом посте.

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

Доступ к код-ревью и мердж-реквестам можно получить из браузера и десктопного приложения Space. А теперь также из IDE! Нативная интеграция между Space и нашими IDE на базе IntelliJ открывает много новых возможностей, и код-ревью это только первый шаг. Мы планируем развивать и улучшать эту интеграцию.

Видео

Если вы предпочитаете видео, смотрите обзор этой функциональности от Триши Ги:

Space-плагин встроен в свежую версию IntelliJ IDEA 2021.1. Для других наших IDE плагин нужно установить вручную.

Прежде чем приступить к ревью кода, войдите в Space из IDE. Это можно сделать в настройках: Tools | Space. Введите URL-адрес своей организации Space, нажмите Log In, и ваш дефолтный браузер попросит вас предоставить доступ из IDE.

После этого в Get from VCS появится список всех проектов и репозиториев в вашей организации Space. Найдите и выберите Git-репозиторий, с которого вы хотите начать, и нажмите Clone.

У Space-плагина есть свое окно, в котором можно просматривать задания в Space Automation. Плагин также обеспечивает автодополнение и подсветку синтаксиса для файлов .space.kts.

Но мы здесь из-за код-ревью, так что перейдем к делу.

Окно Code Reviews

Окно Space Code Reviews открывается с боковой панели или через меню Tools | Space | Code Reviews. В нем вы увидите все ревью, относящиеся к текущему проекту. В окне работает поиск и фильтры.

Фильтры помогут отсортировать:

  • Открытые и закрытые ревью;

  • Ревью, в которых содержатся ваши изменения;

  • Ревью, требующие вашего внимания;

  • Изменения, которые вам нужно просмотреть;

  • Ревью, назначенные на вас.

Хронология код-ревью

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

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

В Space важное место занимают чаты. Комментарии к код-ревью это тоже чат: оставляйте дополнительные комментарии и отвечайте коллегам в тредах. Все это не выходя из IDE.

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

Ревью кода в IDE

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

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

Принять изменения или дождаться ответа

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

  • Accept Changes, то есть принять изменения, если на ваш взгляд с кодом все в порядке.

  • Wait for Response, то есть подождать ответа, если вы ознакомились с изменениями, но у вас остались вопросы или в коде есть нерешенные проблемы.

В любом случае ваш этап проверки будет завершен и ваши комментарии будут опубликованы.

Заключение

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

Space-плагин встроен в IntelliJ IDEA 2021.1, а для других наших IDE его можно установить вручную.

Вы можете бесплатно зарегистрироваться в Space и легко создать зеркало существующего Git-репозитория, чтобы пользоваться всеми возможностями Space для код-ревью в IntelliJ IDEA.

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

Подробнее..

Топ-3 плагина для автозаполнения полей

07.02.2021 12:11:04 | Автор: admin

Введение

Сегодня я расскажу про плагины, которые помогают быстро заполнить поля тестируемой формы. Рассказ также доступен в виде видео. Мой топ-3:

Применять плагины мы будем на бесплатной системе Users.

Если авторизоваться в системе, можно добавить новую компанию. Из обязательных полей только название и тип, но есть еще 6 дополнительных ИНН, ОГРН, КПП, телефон, адрес, сотрудники.

Форма создания компании в UsersФорма создания компании в Users

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

Вот, например, правила формирования ИНН и КПП. Иногда система даже контрольные суммы выверяет, там просто 123 не введешь! В Users проверка проще, только по количеству цифр, но 123 или ааа тоже не прокатит =)

Получается, что при заполнении карточки нужно включать мозг и писать значения осознанно. Это интересно делать один раз, а потом нудная рутина. Рутину лучше автоматизировать. В users это даже несложно, можно сохранить в postman запрос на создание и заполнение всех полей.

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

Заполнять будем форму создания компании в Users и форму создания пользователя. Она еще хардкорнее, там 20 полей!

Форма создания пользователя в UsersФорма создания пользователя в Users

Ну что, давайте сравнивать плагины!

3 место Bug magnet

О плагине

Ссылка https://bugmagnet.org/ (Chrome или Firefox)

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

Но зато в плагине есть куча разных типов полей:

  • Имя

  • Email

  • URL

  • Номер кредитной карты

  • Просто числовое поле

  • .

Плагин Bug magnetПлагин Bug magnet

Мне больше всего нравятся:

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

  • format exploits позволяет новичку провести простейшие проверки на уязвимость

А еще можно просто раскрыть список предлагаемых проверок и вуаля, у вас уже есть набросок чек-листа для вашего поля!

Авторы пишут, что собрали типичные граничные значения в своих проверочных данных. Да, если присмотреться к Numbers и Text Size, мы увидим там как типовые значения, так и попытки выйти за стандартные границы.

Как использовать

  1. Устанавливаете плагин.

  2. Тыкаете правой кнопкой на любое поле, куда можно вводить данные.

  3. Выбираете пункт Bug Magnet.

  4. Выбираете подходящее поле

  5. Выбираете нужное значение.

  6. Повторяете для следующего поля пункты 2-5.

Профит!

Создание компании

Начнем пробовать с формы создания компаний в Users. Та-а-а-ак, название компании.. Ну, это просто строка. Подставим кириллицу:

Bug Magnet Lorems (имитация нормального текста, с пробелами и тд*) Cyrillic

Заполняем название компании кириллицейЗаполняем название компании кириллицей

* Lorem ipsumтекстовая болванка, применяется в типографике для шаблонов верстки. Там кусок псевдолатыни, начинается как lorem ipsum, оттуда и пошло.

Поле заполнилось кучей русских слов с пробелами:

Результат работы плагина кириллический текст с пробеламиРезультат работы плагина кириллический текст с пробелами

Отлично. Едем дальше. ИНН это явно число, ищем в numbers.

Bug Magnet Numbers (любое значение)

В ИНН подставим числоВ ИНН подставим число

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

Выбрали ИНН, переходим к следующему полю. Смотрим, что это за поле, прикидываем, где искать значение для него, выбираем, переходим к следующему Повторить N раз =)

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

Поле ИНН должно состоять из 12 цифр

Ошибка при сохранении карточкиОшибка при сохранении карточки

То есть любое число здесь не подойдет. А вот ИНН, да еще русского, в плагинчике нету, так что исправляем вручную. И снова пытаемся сохранить, и снова ошибка:

Поле ОГРН должно состоять из 13 цифр

Теперь ошибка в ОГРНТеперь ошибка в ОГРН

Исправляем, сохраняем. Теперь ошибка в КПП:

Поле КПП должно состоять из 9 символов

Исправляем, сохраняем ура! Компания создана! Фух, справились! Плагин помог, но не сильно ускорил заполнение.


Создание пользователя

При создании пользователя плагин уже интереснее, потому что в нем есть имена и email-ы. Правда, имена нерусские, а вот с email-ом bug magnet поможет подскажет, что именно можно проверить. Какие валидные и невалидные тесты можно провести.

Вот вы можете сходу накидать десяток разных тестов на валидный email? А на невалидный? Нет? Тогда вам точно стоит установить плагинчик. Он как минимум даст вам идеи для чек-листа.

И в этом его мощь. Его можно использовать именно как подсказку а что еще можно тут проверить?. Даже если вы тестируете мобильное или десктоп приложение, вы просто открываете в вебе любую страничку, хоть google, ставите в любое поле курсор и смотрите, что вообще плагин предлагает проверить для того или иного поля.

Для текстовых полей у плагина много идей:

  • разный алфавит

  • разный размер текста

  • пробелы в тексте (например, лидирующие, делается ли trim?)

  • спецсимволы

  • простейшие уязвимости

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

Заполним все поля разными значениямиЗаполним все поля разными значениями

Пытаемся сохранить, вылезает ошибка:

Слишком длинное поле name1

Увы, ошибкаУвы, ошибка

Но стойте. Все поля очистились!

При неправильном вводе система очистила ВСЕ поля!При неправильном вводе система очистила ВСЕ поля!

Это косяк разработчика он обновляет страницу при ошибке, не сохраняя введенные данные. Такое поведение сейчас редко где встретишь, но всякое бывает. А для пользователя это #жизньболь. Да и для тестировщика тоже, если он старался и придумывал для каждого поля какое-то своё значение.

В идеале нужно ставить баг или улучшение. И исправлять такое поведение. Но Работаем с тем, что имеем. Может, баг такой стоит, просто в версии исправим когда-нибудь.

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

При этом помните, что мы заполняем каждое поле в отдельности, делая 4 действия:

ПКМ (правая кнопка мыши) Bug Magnet Lorems (выбираем основной пункт) Cyrillic (выбираем значение для этого пункта)

А для email действий будет 5:

ПКМ Bug Magnet email valid with plus

Итого получаем 20 полей на 4 действия в каждом Унылость и тлен! Поэтому этот плагин у меня на 3 месте именно как плагин для автозаполнения полей. Его можно использовать таким образом, но это интересно только в первый раз.

Плюсы

1. Подсказывает тесты что еще можно проверить для числа или email? Может быть как чит-лист для новичков.

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

2. Много разных типов полей внутри имена, email, числа, цены, кредитки Дажеformat exploit есть! Отличная штука для новичка.

Минусы

1. Надо заполнять каждое поле отдельно, причем в 4 клика это долго

2. Данные нерусские отметаем имена, адреса, кредитки Хотя полезное всё равно остается

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

Хочется, чтобы всё заполнялось само и в один клик. Первый пункт самый печальный, поэтому плагин у меня только на третьем месте.

2 место Web developer toolbar

О плагине

Ссылка на плагин http://chrispederick.com/work/web-developer/

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

Web developer toolbar вообще очень интересный плагинчик, который умеет кучу всякого разного. В рамках этой статьи нас интересует именно автозаполнение форм, поэтому мы будем работать с вкладкой Forms

Web developer toolbar вкладка FormsWeb developer toolbar вкладка Forms

Эта вкладка позволяет вам:

  • Заполнить все поля формы автоматом (то, что нам и надо).

  • Удалить все ограничения по длине полей (maxlenght).

  • Заполнить все чек-боксы на форме (актуально, когда их очень много).

  • Снять все галки в чек-боксах.

Поэтому плагин настоятельно рекомендую к установке и использованию, если вы тестируете веб-приложения. Пригодится!

Как использовать

  1. Устанавливаете плагин в панели браузера появляется шестеренка.

  2. Нажимаете на шестеренку

  3. Выбираете вкладку Forms (при повторном использовании будет открывать сразу нужную вкладку, которую вы использовали в прошлый раз)

  4. Пункт Populate Form Fields

После установки плагина все еще быстрее, если используете ровно одну вкладку:

Тык-тык по шестеренке Populate Form Fields

Профит! Все поля заполнены!

Как заполнить поля формы через плагинКак заполнить поля формы через плагин

Создание компании

Открыли форму, дали плагину задачу Populate Form Fields готово!

Поля формы заполнились, плагин указал, сколько полей заполнил 7 штук. Причем моментально и сразу все, что сразу делает его удобнее Bug Magnet-а.

За пару кликов заполнили 7 полей!За пару кликов заполнили 7 полей!

Пытаемся сохранить ошибка!

Поле ИНН должно состоять из 12 цифр

Но увы, от таких ошибок плагин не защищаетНо увы, от таких ошибок плагин не защищает

Та же проблема, что и в Bug Magnet плагин не учитывает ограничения, которые стоят на полях. И вообще судя по введенным данным, плагин просто записывает в поле его имя из DOM-модели. Давайте проверим это.

Нажимаем F12 выбираем кнопку слева от Инспектор наводим на поле Инн.

Ну да, в HTML у этого поля есть атрибут name = inn.

Это не очень хорошо, потому что нам снова нужно вручную корректировать поля, подбирая корректный ИНН, ОГРН и другие значения И всё же это будет быстрее, чем в Bug Magnet одну кнопку нажал и 1-2 поле подредактировал.

А вот если форма просто набор из текстовых полей, плагин будет шикарен. Хоть 100 полей, мы их заполним в 2 клика!

Однако если страницу обновить и снова заполнить, плагин подставит ровно те же самые значение! Так что быстренько наклепать 10 разных пользователей не получится, увы.

Если у нас есть проверка на уникальность данных (ФИО, ИНН, емейл), то мы сразу же получим ошибку. И снова править ручками.


Создание пользователя

Открыли форму, дали плагину задачу Populate Form Fields готово!

На этот раз за 2 клика мы заполнили сразу 19 полей, круто!

19 полей за 2 клика!19 полей за 2 клика!

Пытаемся сохранить увы, слишком много символов в имени собачки:

Но тоже с проблемами...Но тоже с проблемами...

И вся форма очистилась, ой! Снова заполнять В кейсе с Bug Magnet это было очень печально. Но с web developer toolbar намного проще. Снова тык-тык шестеренку Populate Form Fields, и снова 19 полей заполнено. Редактируем собачку, оставим ей 2 символа, чтобы наверняка: 12.

Сохраняем успешно! Вот он, наш пользователь с email example@example.com (видимо, плагин таки знает некоторые типы полей и под email у него своя заглушка):

Пытаемся добавить ещё одного нового пользователя по тому же принципу:

  1. Заполнили плагином

  2. Поправили собачку

  3. Сохранили

Увы, ошибка!

Такое имя в базе уже есть

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

  1. Заполнили плагином

  2. Поправили имя

  3. Поправили email

  4. Поправили собачку

  5. Сохранили

Плюсы

За 1 кнопку заполняешь сразу все поля хоть 7, хоть 27, хоть 107!

Минусы

1. Значения всегда одинаковые каждый раз заполняет одними и теми же значениями

2. Плагин не учитывает тип поля (кроме email)

1 место Fake Filler

О плагине

Ссылка на плагин https://fakefiller.com/ (а вот расширение для Chrome).

Раньше назывался Form Filler.

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

Что он умеет? Плагин:

  • Заполняет текстовые поля.

  • Поддерживает свойство maxlength.

  • Рандомно заполняет дропдауны, чек-боксы и радио-баттоны.

  • Игнорирует CAPTCHA, спрятанные, отключенные или readonly поля.

  • Поддерживает автозаполнение полей, проверяемых по регуляркам (круто!)

Как использовать

После установки плагина достаточно нажать на его иконку

Как использовать fake fillerКак использовать fake filler

И всё! Все поля заполнены!


Создание компании

Открыли форму, нажали кнопку плагина профит!

По одной кнопке заполнили все поля!По одной кнопке заполнили все поля!

Обратите внимание, что поля заполнены рандомными значениями. Это не просто название поля из кода html, а что-то похожее на правду. Попробуем снова тыкнуть на иконку форм-филлера и поля теперь заполнены другими значениями!

Если тыкать на кнопку несколько раз, значения будут обновляться!Если тыкать на кнопку несколько раз, значения будут обновляться!

Можете хоть 10 раз тыкать на кнопку, значения будут разные. А, значит, мы не напоремся на проблему ФИО с таким именем в базе уже есть.

Попробуем сохранить ошибка:

Поле ИНН должно состоять из 10 цифр

Но ошибок всё равно не избежатьНо ошибок всё равно не избежать

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

Заполняем плагином, корректируем вручную нужные поля.


Создание пользователя

Тыкает на плагин он подставляет вполне нормальные (хоть и не русские) имя и емейл. То есть какие-то типовые поля он понимает. Дату из календаря также выбрал.

Плагин осмысленно подставил имя, емейл, даже заполнил дату!Плагин осмысленно подставил имя, емейл, даже заполнил дату!

Но при попытке сохранить получаем ошибку, что превышена длина поля name1

Это странно, в HTML-коде мы видим maxlenght = 10 на этом поле, а плагин вроде должен уметь читать этот атрибут. Но, видимо, срабатывает далеко не всегда. Может, он читает этот атрибут только если он единственный на поле, кто знает.

В любом случае, приходится дорабатывать форму ручками. Снова тык-тык плагин, подправили name1 и пытаемся сохранить. В любом случае это будет быстрее, чем с web developer toolbar, так как не надо менять имя и емейл на уникальные значения.

Плюсы

1. За 1 кнопку заполняешь сразу все поля хоть 7, хоть 27, хоть 107!

2. Каждый раз разные значения! значит, можно легко наклепать 10 разных пользователей / карточек товара / чего-то ещё.

3. Умеет заполнять дропдауны, чек-боксы и радио-баттоны.

4. Учитывает maxlenght по крайней мере местами, с этим плагином я намного реже огребаю поле слишком длинное, чем с остальными.

Минусы

1. Нерусские данные

2. Не знает такие типы, как ИНН, ОГРН.

Итого

Мы обсудили 3 плагина

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

А если мы хотим заполнить сразу все, мы используем либо web developer toolbar (вкладка forms), либо fake filler.

А вы какие плагины любите для автозаполнения полей?

Подробнее..

Конструктор интерактивных туров

11.09.2020 10:13:26 | Автор: admin


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


Процесс обучения


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


Одной из компаний, которая занимается не только разработкой программного обеспечения, но и помогает пользователям своих решений освоить управление ими, является НПО Криста. Для этого на базе компании создан специальный учебный центр.


Автоматизация обучения


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



Постановка задачи


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


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


Входными данными для разрабатываемой системы является загружённое в браузер web-приложение с функционалом, по которому создается тур. Выходными данными являются туры, сохранённые в реляционную базу данных под управлением PostgreSQL. Для получения входных данных необходимо, чтобы разрабатываемая программа работала в браузере. Следовательно, требуется создать web-приложения, что предполагает использование клиент-серверной технологии.



Структура системы


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



Взаимодействие между клиентом и сервером происходит посредством передачи HTTP-сообщений с данными о турах в формате JSON. Обращение к БД осуществляется на языке SQL. Основным языком программирования, используемым при разработке клиентского приложения, является TypeScript. Архитектура клиента определяется использованием библиотек React и Redux. Серверное приложение разработано как Maven-проект на языке Java.



Технологические решения


Основной частью при создании туров является редактор кода тура. За его основу была взята библиотека Blockly. Она разрабатывается и поддерживается компанией Google с 2012 года. Blockly свободно распространяется вместе c исходным кодом и включает в себя графический редактор, а также генераторы кода для подготовки исполнения программы в среде web-приложения. Программы в этом редакторе создаются на визуальном языке программирования Blockly путём соединения соответствующих блоков. Существует возможность определения новых блоков с заданием их формы и генерируемого ими программного кода (подробнее). Благодаря этому редактор может быть расширен за счёт добавления блоков, реализующих логику создания тура.


Так как клиентское приложение предоставляет инструментарий для web-разработки, было принято решение добавить его в инструменты разработчика DevTools браузера Chrome в качестве расширения (подробнее: раз, два). При этом часть клиента, реализующая вспомогательную подсистему, встраивается на инспектируемую страницу web-приложения, по которому создается тур (по примеру). Связь между частями обеспечивается по схеме.


Следовательно, программа функционирует в двух окнах: в окне web-приложения и в окне DevTools. Соответствующий пользовательский интерфейс изображён ниже. В окне DevTools пользователь управляет созданием тура. На инспектируемой странице он выбирает элементы интерфейса, которые необходимо выделить, а также тестирует созданный тур.



Алгоритм работы системы


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



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



Самое первое взаимодействие между клиентом и сервером (6 7) происходит всякий раз, когда пользователь открывает вкладку с плагином (4). Тогда же происходит добавление части клиентской программы к веб-приложению, по которому создается тур (5).



Результат разработки


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



При помощи таких блоков описывается сценарий тура, на основании которого генерируется соответствующий JavaScript-код.



При запуске воспроизведения в окно web-приложения, по которому создавался тур, загружается и выполняется JavaScript-код тура. При этом на странице появляется навигационная панель для управления воспроизведением тура, а также описанные в сценарии элементы. В представленном примере на первом шаге отрисуется пульсирующий указатель на элемент интерфейса, нажатие на который запустит воспроизведение следующего шага тура.



Несмотря на то что разработанное приложение ориентировано на программные продукты компании НПО Криста, оно может использоваться для создания туров по любому web-приложению.



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


Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru