SEARCH:
Нет данных.
Сегодня
29 апреля 2024 / Monday / Неделя четная
Time tableРасписание
  
    Описание дисциплины     
    Лабораторные работы     
    Курсовой проект     
    Литература     

Первый семестр

  1. Описание требований к системе: варианты использования, пользовательские истории.
  2. Выявление классов. Построение и описание диаграммы классов анализа.
  3. Построение и описание диаграмм деятельности.
  4. Построение и описание диаграмм состояний.
  5. Построение и описание диаграммы проектных классов.
  6. Построение и описание диаграмм последовательности для операций проектных классов.
  7. Построение и описание диаграммы пакетов.
  8. Построение и описание диаграммы компонентов.
  9. Построение и описание диаграммы развёртывания.

Второй семестр

1 Модульное и интеграционное тестирование

Срок сдачи: второе занятие

Модульный тест – фрагмент кода (метод), написанный разработчиком, и проверяющий правильность отдельного модуля (метода) исходного кода программы. Цель модульного тестирования – изолировать отдельные части программы и показать, что по отдельности эти части работоспособны. Модульное тестирование позже позволяет программистам проводить рефакторинг, будучи уверенными, что модуль по-прежнему работает корректно. Для отделения модулей друг от друга используют так называемые mock-объекты – фиктивные объекты, предназначенные исключительно для тестирования.

Введение зависимости от внешних модулей или данных превращает модульные тесты в интеграционные.

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

Задание: создать не менее пяти (на каждого члена команды) осмысленных модульных или интеграционных тестов и добиться их успешного выполнения.

Тесты должны включать

  • хотя бы один тест на исключение (проверка того, что метод действительно возбуждает исключение определённого типа при возникновении исключительной ситуации);
  • хотя бы один тест, проверяющий возвращаемое значение, являющееся коллекцией;
  • хотя бы один тест для метода, не возвращающего значение (void);
  • хотя бы один тест, использующий mock-объект.

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

2 Сборка проекта в командной строке

Срок сдачи: третье занятие

Определение расположения утилиты MSBuild.exe

Чтобы определить местоположение MSBuild.exe в системе, запустите Visual Studio Command Prompt и выполните команду

where msbuild

Эта команда выведет список всех расположений утилиты MSBuild.exe, например:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe
C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe

Сборка проекта

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

c:\windows\microsoft.net\framework\v4.0.30319\msbuild.exe

(для .NET Framework v4.0.30319).

Задание: cобрать проект (получить исполняемый файл или установочный пакет) из командной строки.

Построение и выполнение тестов

Для выполнения модульных тестов используется утилита MSTest.exe. Определить её расположение можно используя команду where:

> where mstest
c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe

Для выполения тестов необходимо предварительно выполнить сборку проекта, содержащего тесты (допустим, он называется "TestProject"):

msbuild "TestProject\TestProject.csproj"

Команда для выполнения тестов:

mstest "/testcontainer:TestProject\bin\Debug\TestProject.dll"

Задание: запустить тесты из командной строки.

3 Сборка и тестирование проекта с помощью системы автоматического построения

Срок сдачи: четвёртое занятие

Для того чтобы выполнять построение проекта и его тестирование с помощью одной команды в командной строке, необходим конфигурационный файл. Пример такого файла для MSBuild в Visual Studio 2010:

<?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Test">
  <ItemGroup>
    <BuildArtifactsDir Include="BuildArtifacts\" />
    <SolutionFile Include="Project.sln" />
  </ItemGroup>

  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
    <BuildPlatform Condition=" '$(BuildPlatform)' == '' ">Any CPU</BuildPlatform>
  </PropertyGroup>

  <Target Name="Init" DependsOnTargets="Clean">
    <MakeDir Directories="@(BuildArtifactsDir)" />
  </Target>

  <Target Name="Clean">
    <RemoveDir Directories="@(BuildArtifactsDir)" />
  </Target>

  <Target Name="Compile" DependsOnTargets="Init">
    <MSBuild Projects="@(SolutionFile)" Targets="Rebuild"
             Properties="OutDir=%(BuildArtifactsDir.FullPath);Configuration=$(Configuration);Platform=$(BuildPlatform)" />
  </Target>

  <Target Name="Test" DependsOnTargets="Compile">
    <PropertyGroup>
      <TestSuccess>1</TestSuccess>
    </PropertyGroup>
    <Exec Command='"$(VS100COMNTOOLS)..\IDE\mstest.exe" /testcontainer:@(BuildArtifactsDir)\TestProject.dll' >
      <Output TaskParameter="ExitCode" PropertyName="TestSuccess"/>
    </Exec>
  </Target>
</Project>

Источник

Запуск построения:

msbuild Project.msbuild

Результат:

...
Build succeeded.
    0 Warning(s)
    0 Error(s)

Time Elapsed 00:00:03.36

Задание: разработать конфигурационный файл MSBuild для сборки и тестирования своего проекта и проверить его работу в командной строке.

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

4 Настройка системы непрерывной интеграции

Срок сдачи: пятое занятие

  1. Войдите в систему непрерывной интеграции (адрес уточните у преподавателя) и создайте учётную запись.
  2. Создайте новую задачу. В поле Job name введите свои фамилию и имя.
  3. В настройках задачи в группе Source Code Management выберите свою систему управления версиями и укажите ссылку на свой репозитарий.
  4. В группе Build Triggers установите опцию Poll SCM.
  5. В группе Build добавьте шаг Build a Visual Studio project or solution using MSBuild и введите имя конфигурационного файла в поле MSBuild Build File.
  6. Сохраните задачу.
  7. Запустите построение (Build Now).
  8. Откройте страницу Console Output и удостоверьтесь, что построение было выполнено успешно, и были запущены все требуемые шаги, включая тестирование проекта.
  9. Убедитесь, что при изменении исходного кода в системе управления версиями, Jenkins автоматически выполняет сборку и тестирование проекта.
2011 © Томский политехнический университет
При полном или частичном использовании текстовых и графических материалов с сайта ссылка на портал ТПУ обязательна