Материал: Тезис

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Разработка интерфейса для оптимизации процессов тестирования программных продуктов

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

Для контроля в процессе разработки применяется система управления версиями.

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

Большую часть мирового рынка занимают 2 вида такой системы: Git и SVN.

Git - распределённая система управления версиями.

SVN - централизованная система управления версиями.

Основные преимущества Git

  • Распределенность

  • Открытый исходный код

  • Не требуется центрального сервера

Основные преимущества SVN

  • Более эффективная работа с большой кодовой базой

  • Наличие большой, географически распределенной команды

  • Наличие в проекте некодовых файлов (бинарные, графические файлы)

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

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