Jelajahi Sumber

Merge branch 'master' of u21seliverstov/ISRPO into master

ypv 1 tahun lalu
induk
melakukan
bb3ed3fe09

+ 29 - 0
Лекции/Installshield/Seliverstov Installshield.md

@@ -0,0 +1,29 @@
+# InstallShield
+InstallShield предоставляет собой среду для настройки проекта, создания сценария и конечного релиза дистрибутива — как в MSI-, так и в различных виртуальных форматах. Это одно из наиболее известных решений в области создания инсталляторов для платформы Windows. Существует три редакции комплекса — Express, Professional и Premier. Последняя из них считается наиболее функциональной (см. сравнение версий). Не так давно был выпущен обновленный пакет InstallShield 2014, о котором далее пойдет речь.
+
+# Импортирование проектов
+Проекты могут быть импортированы из Microsoft Visual Studio или созданы на основе имеющихся шаблонов. При создании проекта с нуля на выбор доступен один из нескольких типов:
+
+* Базовый MSI-проект — используется технология Windows Installer, доступен вызов InstallScript-, VBScript-, Jscript-скриптов, exe- и dll-файлов.
+* П-роект InstallScript — InstallScript используется для контроля установки
+* InstallScript MSI-проект — совместное использование Windows Installer и InstallScript для развертывания установки.
+В свою очередь, для каждого из указанных типов имеется множество дополнительных проектов. В целом, кроме инсталляторов, комплекс позволяет создавать модули объединения (Redistributable), а также модификаторы (Transform).
+
+# Процесс работы
+Есть несколько вариантов начала работы в InstallShield, один из них — воспользоваться пошаговым мастером настройки (Project Assistent), который запускается автоматически при создании нового проекта. Более детальная конфигурация осуществляется в окне дизайнера установки. Настройки сгруппированы следующим образом:
+
+* Информация об установке (Installation Information) — таблица с общей информацией о проекте. Здесь, в частности, можно выбрать язык инсталлятора по умолчанию. Всего InstallShield поддерживает более 30 локализаций.
+* Organization (Организация) — включает в себя дизайн установщика, список функций и компонентов, которые будут представлены пользователю на выбор при установке.
+* Application Data (Данные приложения) — данные приложения, такие как файлы, модули и зависимости. Часть компонентов может быть установлена локально, другие необходимо скачивать во время установки.
+* System Configuration (Системная конфигурация): ярлыки, ресурсы, конфигурационные файлы, сервисы и др.
+* Server Configuration — конфигурация сервера в соответствии с требованиями инсталлятора. Сюда входят настройки IIS, сервисы компонентов, SQL-скрипты для SQL Server, Microsoft Windows Azure, MySQL, или Oracle. Используя Microsoft Web Deploy, можно скачивать зависимости, запускать скрипты, выполнять задания на сервере.
+* Behavior and logic (Поведение и логика) — скрипты, действия, файлы для инсталляции и др.
+* User Interface (Пользовательский интерфейс) — дизайн инсталлятора, включая оформление диалогов, изображения, текст и прочие данные. На выбор доступны темы оформления, очень гибкая настройка уже имеющихся диалогов вплоть до перетаскивания каждого элемента. Построчный редактор позволяет работать с локализациями.
+* Media — управление переменными окружения, настройка обновлений и релизов продукта, патчи.
+* Дополнительные инструменты (Additional Tools): сканнер файловых зависимостей, MSI-отладчик и прямой редактор, предназначенный для просмотра структуры проекта в виде таблицы.
+
+В качестве скриптового языка для создания инсталляторов выступает InstallScript, имеющий сходство с языком C и позволяющий создавать пользовательские действия (Custom Actions). Тем самым, скрипты помогают при вызове dll-библиотек, запуске приложений, VBScript-, Jscript-, InstallScript- скриптов и мн. др.
+
+Для правки кода в InstallShield используется редактор с подсветкой синтаксиса и автодополнением. Кроме того, для создания действий может использоваться мастер пользовательских действий (Custom Action Wizard).
+
+Бесспорно, InstallShield является одним из лидирующих продуктов на рынке инсталляционных комплексов. Его наиболее сильная сторона заключается в гибкости, что позволяет создавать многочисленные типы инсталляторов для развертывания на компьютере или сервере, с поддержкой сценариев. От домашнего использования может отпугнуть достаточно высокая цена лицензии для каждой из редакций, начиная с InstallShield Express ($649).

+ 17 - 0
Лекции/Notepad/Notepad++.md

@@ -0,0 +1,17 @@
+# Notepad++, 
+он же Notepad Plus Plus — это текстовый редактор, который можно использовать и для работы с текстами, и для написания и редактирования кода. Он похож на обычный «Блокнот», но функциональнее.
+Не стоит путать Notepad++ с обычным Notepad: так называют «Блокнот», программу, которая по умолчанию есть в операционной системе Windows. «Блокнот» очень простой, по сравнению с ним Notepad++ куда мощнее и удобнее.
+Иногда Notepad++ используют в качестве редактора кода. Так он стал известен среди разработчиков. Сейчас, несмотря на обилие IDE и специализированных редакторов, Notepad++ все еще используют для специфических языков программирования и сред.
+Название придумали по аналогии с языком C++: тот был похож на C, но расширял его возможности. То же самое можно сказать про «Блокнот» и Notepad++ — его расширенный вариант. По-русски название читается как «ноутпад-плас-плас», реже его читают как «нотепад-плюс-плюс».
+# Для чего нужен Notepad++
+Функциональность Notepad++ — нечто среднее между редактором текста и кода. Его можно использовать для множества задач, он довольно универсален. Вот несколько примеров, для чего может пригодиться редактор.
+Для заметок. Notepad++ поддерживает языки разметки, на которых пишут технические заметки и документацию, например Markdown или LaTeX. Он знает их синтаксис и выделяет все по правилам. Поэтому техническому специалисту, привыкшему описывать все с помощью специальных языков, будет удобно писать заметки с помощью этого инструмента.
+Для текстового контента. Также Notepad++ — текстовый редактор, а это значит, что в нем можно писать разнообразные тексты. В отличие от обычного «Блокнота», он поддерживает вкладки: пользователь может одновременно открыть несколько текстов в разных вкладках. Выше и возможности для форматирования. В Notepad++ по умолчанию включена поддержка Markdown — разметки, с помощью которой можно изменять текст. Можно создавать заголовки и списки, делать участки текста полужирными или наклонными — все базовые возможности есть.
+Для записи кода. Причина, по которой редактором пользуются айтишники, — в нем можно писать код. Он поддерживает и узнаёт множество языков программирования, от популярных до очень редких. К тому же Notepad++ гибко настраивается и в нем есть множество возможностей, удобных разработчикам. Он фактически повторяет часть функциональности профессиональных IDE или редакторов кода, но при этом куда меньше весит и требует мало оперативной памяти.
+# Кто пользуется Notepad++
+Среди пользователей редактора — IT-специалисты, инженеры и другие профессионалы, но не только. Им могут пользоваться и представители других профессий, связанных с текстами, расчетами или контентом. Notepad++ универсален. Он подходит для рабочих записей, художественных и технических текстов, HTML-разметки и многого другого. Более того, он расширяемый. Поэтому и вариантов его применения масса.
+Для полноценной разработки редактор используют редко. Но он отлично подходит для быстрого редактирования кода или контента, добавления заметок и других похожих задач. Часто им пользуются веб-разработчики, пишущие на JavaScript или PHP, а также верстальщики для создания разметки на HTML и CSS.
+# Возможности Notepad++
+Notepad++ имеет те же возможности, что обычный текстовый редактор. В нем можно писать и редактировать тексты, сохранять их в разных форматах, проводить поиск и замену — это отличает его от «Блокнота», где нет такой функциональности. Но кроме того, у Notepad++ есть ряд особенностей, которые делают его удобным для программистов и веб-специалистов.
+Обилие форматов и кодировок. Notepad++ поддерживает огромное количество форматов, в которых можно сохранить файл. Это не только текстовые форматы, но и те, в которых сохраняется код на разных языках. Кроме непосредственно программ, он позволяет сохранять верстку, разметку для текстов и другие данные. В нем по умолчанию поддерживается несколько десятков форматов для разных технологий.
+Кроме того, в редакторе по умолчанию есть поддержка наиболее популярных кодировок. В разных системах символы кодируются по-разному. Если скопировать текст в одной кодировке в редактор или браузер, который поддерживает другую, получится нечитаемый набор символов. Notepad++ можно переключать между кодировками, чтобы работать с разным контентом. Для некоторых кодировок доступен перевод из одной в другую. Это может быть важно для веба.

+ 37 - 0
Лекции/Регрессионное_тестирование/Регрессивное тестирование Селиверстов.md

@@ -0,0 +1,37 @@
+# Что такое регрессионное тестирование
+Регрессионное тестирование — это проверка работоспособности приложения после внесения модификаций и доработок. Оно позволяет убедиться, что внесенные изменения не нарушили должное функционирование системы.
+Результатом изменений кода могут быть зависимости, дефекты и сбои. Регрессионное тестирование направлено на снижение этих рисков, чтобы уже созданный и протестированный код продолжал функционировать даже после внесения в него изменений.
+Обычно приложение проходит несколько тестов, прежде чем изменения будут помещены в основную ветвь разработки. Последний этап, регрессионное тестирование, проверяет общее поведение продукта. Регрессионное тестирование обеспечивает общую стабильность и эффективность текущих функций.
+
+# Когда проводить регрессионное тестирование?
+Регрессионное тестирование часто проводят в следующих ситуациях:
+* выдвижение новых требований к существующей функции;
+* добавление новой функции;
+* исправление базы исходного кода в результате устранения бага;
+* оптимизация исходного кода для повышения производительности;
+* установка исправлений (патчей);
+* изменения конфигурации.
+
+# Как проводить тестирование
+
+Шаг 1. Распознайте изменения исходного кода
+Найдите измененные компоненты или модули и их влияние на текущие функции. Затем определите модификацию и оптимизацию в исходном коде.
+Шаг 2. Установите приоритет этих изменений и требований к продукту
+Далее упорядочьте эти изменения и спецификации продукта, чтобы упростить процедуру тестирования с помощью подходящих инструментов и сценариев тестирования.
+Шаг 3. Установите критерии входа и точку входа
+Перед запуском регрессионного теста убедитесь, что ваше приложение соответствует критериям приемлемости.
+Шаг 4. Выберите точку выхода
+Установите конечную точку или точку выхода для минимальных требований или критериев приемлемости, указанных на третьем шаге.
+Шаг 5. Составьте план своих тестов
+Наконец, составьте список всех тестовых компонентов и установите подходящее время выполнения.
+# Методы регрессионного тестирования
+Существуют три наиболее известных метода реализации регрессионного тестирования: полная регрессия, выбор теста и приоритизация тест-кейсов.
+
+1. Полная регрессия
+В этом методе регрессионное тестирование используется во всех активных наборах тестов. Несмотря на то, что этот подход требует много времени и ресурсов, с его помощью вы гарантированно обнаружите и устраните все дефекты. Следовательно, метод полной регрессии работает лучше всего в тех случаях, когда программа модифицируется для новой платформы или языка либо обновляется операционная система.
+
+2. Выбор регрессионного теста
+Регрессионное тестирование может ограничиваться только необходимыми компонентами, на которые могут повлиять изменения. Вы можете применить несколько более актуальных тест-кейсов, сосредоточившись на связных областях, что сократит время и работу, необходимые для проведения регрессионного тестирования.
+
+3. Приоритизация тест-кейсов
+Определите приоритеты тест-кейсов: какие из них будут запущены первыми в процедуре регрессионного тестирования. Приоритизация должна основываться на таких факторах, как процент сбоев, коммерческий эффект и постепенно внедряемые функции. Большое внимание также уделяется тест-кейсам для новых возможностей и клиентских компонентов.