// 
//     Licensed to the Apache Software Foundation (ASF) under one
//     or more contributor license agreements.  See the NOTICE file
//     distributed with this work for additional information
//     regarding copyright ownership.  The ASF licenses this file
//     to you under the Apache License, Version 2.0 (the
//     "License"); you may not use this file except in compliance
//     with the License.  You may obtain a copy of the License at
// 
//       http://www.apache.org/licenses/LICENSE-2.0
// 
//     Unless required by applicable law or agreed to in writing,
//     software distributed under the License is distributed on an
//     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
//     KIND, either express or implied.  See the License for the
//     specific language governing permissions and limitations
//     under the License.
//

= Добавление модульных тестов в проект C - Практическое руководство по IDE NetBeans
:jbake-type: tutorial
:jbake-tags: tutorials 
:jbake-status: published
:icons: font
:syntax: true
:source-highlighter: pygments
:toc: left
:toc-title:
:description: Добавление модульных тестов в проект C - Практическое руководство по IDE NetBeans - Apache NetBeans
:keywords: Apache NetBeans, Tutorials, Добавление модульных тестов в проект C - Практическое руководство по IDE NetBeans

_Составитель: link:mailto:susanm@netbeans.org[+_Сьюзан Морган (Susan Morgan)_+] 
Март 2014 г._ [Номер версии: V8.0-1]



image::images/netbeans-stamp-80-74.png[title="Содержимое этой страницы применимо к IDE NetBeans 7.4 и 8.0"]

|===
|-  |<<requirements,Требования>> 

|-  |<<intro,Введение>> 

|-  |<<cunit,Установка инфраструктуры тестирования CUnit>> 

|-  |<<project,Создание проекта для учебного курса>> 

|-  |<<addtest,Добавление тестов CUnit в управляемый проект NetBeans>> 

|-  |<<runtest,Выполнение теста CUnit>> 

|-  |<<addmore, Добавление еще одного теста CUnit>> 

|-  |<<debug,Отладка теста>> 

|-  |<<addsimple,Добавление простого тeста>> 

|-  |<<editsimple,Изменение простого теста>> 

|-  |<<commandline,Выполнение тестов в интерфейсе командной строки>> 
|===


== Требования

*Для работы с этим учебным курсом требуется программное обеспечение, указанное ниже.*

|===
|Программное обеспечение |Требуемая версия 

|IDE NetBeans (включая поддержку C/C++/Fortran) |link:https://netbeans.org/downloads/index.html[+версия 7.4 или 8.0 с подключаемым модулем NetBeans C/C+++] 

|Комплект для разработчика на языке Java (JDK) |link:http://www.oracle.com/technetwork/java/javase/downloads/index.html[+Версия 7 или 8+] 

|Инфраструктура тестирования CUnit 2.1 |link:http://sourceforge.net/projects/cunit/[+Инфраструктура модульного тестирования для проектов C на sourceforge.+] 
|===


Дополнительные сведения о загрузке и установке необходимого программного обеспечения NetBeans см. в разделах link:../../../community/releases/80/install.html[+Инструкции по установке IDE NetBeans+] и link:../../../community/releases/80/cpp-setup-instructions.html[+Настройка IDE NetBeans для C/C++/Fortran+]
.


== Введение

IDE NetBeans c подключаемым модулем C/C++/Fortran поддерживает модульное тестирование в проектах C/C++. В среде IDE можно создавать и выполнять тесты C и C++, осуществлять их отладку и просматривать результаты. В этой статье описывается использование модульных тестов в проектах C/C++ в среде IDE.

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

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

* Простой тест C
* Простой тест C++
* Тест CUnit
* Тест CppUnit
* Средство запуска теста CppUnit

В этом руководстве описывается использование инфраструктуры тестирования CUnit и простых тестов C в среде NetBeans на Ubuntu Linux, но приведенные здесь инструкции применимы и к другим типам тестов на других плафтормах. Инфраструктуры тестирования CUnit и CppUnit в этом руководстве не рассматриваются. Информацию об использовании этих инфраструктур можно найти в соответствующей документации.


== Установка инфраструктуры тестирования CUnit

Чтобы выполнить практические задания, представленные в этом руководстве, необходимо сначала установить CUnit на локальном компьютере. Дополнительные сведения об инфраструктуре CUnit см. в разделе link:http://sourceforge.net/projects/cunit/[+Проект инфраструктуры тестирования C Unit на sourceforge.+]

Документация по CUnit включена в загружаемый пакет CUnit. Также с документацией можно ознакомиться на веб-сайте по адресу link:http://cunit.sourceforge.net/doc/index.html[+http://cunit.sourceforge.net/doc/index.html+].

Следуйте инструкциям по установке для вашей платформы:

* <<linux,Установка CUnit на Linux или Mac OS>>
* <<solaris,Установка CUnit на Oracle Solaris 11>>
* <<mingw,Установка CUnit на Windows и MinGW>>
* <<cygwin,Установка CUnit на Windows и Cygwin>>


=== Установка CUnit на Linux или Mac OS

При установке на платформу Linux должна быть возможность установить пакеты libcunitl, libcunitl-doc и libcunitl-dev из репозитория пакетов.

Если пакеты libcunitl* недоступны на Mac OS или Linux, можно загрузить исходный код CUnit и выполнить сборку в соответствии с инструкциями в данном документе.

Приведенные ниже инструкции подразумевают, что вы загрузили файл CUnit-2.1-2-src.tar.bz2 в каталог /tmp. Если загруженный файл имеет другое имя, обязательно укажите фактическое имя загружаемого файла CUnit и фактический каталог, в который был сохранен этот файл.

1. Загрузите исходный код CUnit-2.1-2-src.tar.bz2 со страницы link:http://sourceforge.net/projects/cunit/files[+Файлы CUnit+] и сохраните его в каталог временных файлов, например /tmp.
2. В окне терминала распакуйте файл  ``CUnit-2.1-2-src.tar.bz2``  следующим образом:

[source,shell]
----

$ cd /tmp
$ bunzip2 CUnit-2.1-2-src.tar.bz2
$ tar -xvf CUnit-2.1-2-src.tar
----
3. Создайте конфигурацию, выполните сборку и установку CUnit из каталога /tmp следующим образом:

[source,shell]
----

$ cd CUnit-2.1-2
$ ./configure --prefix=/usr
$ make
$ sudo make install
----

После выполнения команды 'make install' инфраструктура тестирования CUnit готова к использованию в среде IDE. Мoжно переходить к разделу <<project,Создание проекта>>.


[[solaris]]
=== Установка CUnit на Oracle Solaris

Перед использованием тестов CUnit необходимо выполнить сборку CUnit в системе сборки link:http://en.wikipedia.org/wiki/GNU_build_system[+GNU+]. Система сборки GNU в Oracle Solaris 11, как правило, не установлена по умолчанию. Компоненты системы сборки GNU можно получить из репозитория пакетов Oracle Solaris 11 с помощью следующих команд:


[source,java]
----

pkg install pkg://solaris/developer/build/gnu-make
pkg install pkg://solaris/developer/build/make
pkg install pkg://solaris/developer/gcc-45
pkg install pkg://solaris/system/header
pkg install pkg://solaris/developer/build/autoconf
pkg install pkg://solaris/developer/build/automake-110
----

Приведенные ниже инструкции подразумевают, что вы загрузили файл CUnit-2.1-2-src.tar.bz2 в каталог /tmp. Если загруженный файл имеет другое имя, обязательно укажите фактическое имя загружаемого файла CUnit и фактический каталог, в который был сохранен этот файл.

1. Загрузите исходный код CUnit-2.1-2-src.tar.bz2 со страницы link:http://sourceforge.net/projects/cunit/files[+Файлы CUnit+] и сохраните его в каталог временных файлов, например /tmp.
2. В окне терминала распакуйте файл  ``CUnit-2.1-2-src.tar.bz2``  следующим образом:

[source,shell]
----

$ cd /tmp
$ bunzip2 CUnit-2.1-2-src.tar.bz2
$ tar -xvf CUnit-2.1-2-src.tar
----
3. Создайте конфигурацию, выполните сборку и установку CUnit из каталога /tmp следующим образом:

[source,shell]
----

$ cd CUnit-2.1-2
$ ./configure --prefix=/usr
$ make
$ make install
----

После выполнения команды 'make install' инфраструктура тестирования CUnit готова к использованию в среде IDE. Мoжно переходить к разделу <<project,Создание проекта>>.


=== Установка CUnit на Windows и MinGW

Приведенные ниже инструкции подразумевают, что вы загрузили файл CUnit-2.1-2-src.tar.bz2 в каталог C:/distr. Если загруженный файл имеет другое имя, обязательно укажите фактическое имя загружаемого файла CUnit и фактический каталог, в который был сохранен этот файл.

1. Загрузите исходный код CUnit-2.1-2-src.tar.bz2 со страницы link:http://sourceforge.net/projects/cunit/files[+Файлы CUnit+] и сохраните его в каталог временных файлов, например C:/distr.
2. Запустите оболочку MinGW в Windows (выберите Пуск > Все программы > MinGW > MinGW Shell).
3. В окне MinGW Shell распакуйте файл  ``CUnit-2.1-2-src.tar.bz2``  следующим образом:

[source,shell]
----

$ cd c:/distr
$ bunzip2.exe CUnit-2.1-2-src.tar.bz2
$ tar xvf CUnit-2.1-2-src.tar
$ cd ./CUnit-2.1-2
----
4. Найдите путь Unix к MinGW с помощью команды mount.

[source,shell]
----

$ mount
----
Результат будет выглядеть примерно так:

[source,java]
----

C:\Users\username\AppData\Local\Temp on /tmp type user (binmode,noumount)
C:\MinGW\msys\1.0 on /usr type user (binmode,noumount)
C:\MinGW\msys\1.0 on / type user (binmode,noumount)
*C:\MinGW on /mingw type user (binmode)*
----
В последней строке, выделенной полужирным шрифтом, показан путь Unix: /mingw. Система может выдать и другой результат. Запишите этот путь, так как его потребуется указать в следующей команде.
5. Создайте конфигурацию Makefile с помощью следующей команды. 
Если оболочка MinGW расположена на пути, отличном от /mingw, обязательно укажите соответствующее местосположение MinGW в Unix с помощью параметра --prefix=.

[source,shell]
----

$ ./configure --prefix=/mingw
_(lots of output about checking and configuring)
..._
config.status: executing depfiles commands
config.status: executing libtool commands

----
6. Выполните сборку библиотеки для CUnit:

[source,shell]
----

$ make
make all-recursive
make[1]: Entering directory 'c/distr/CUnit-2.1-2'
Making all in CUnit
...
_(lots of other output)_
make[1]: Leaving directory 'c/distr/CUnit-2.1-2'
$
----
7. Установите библиотеку CUnit в каталоги C:/MinGW/include/CUnit, C:/MinGW/share/CUnit и C:/MinGW/doc/CUnit с помощью команды make install:

[source,shell]
----

$ make install
Making install in CUnit
make[1]: Entering directory 'c/distr/CUnit-2.1-2/CUnit'
Making install in Sources
make[1]: Entering directory 'c/distr/CUnit-2.1-2/Cunit/Sources'
...
 _(lots of other output)_
make[1]: Leaving directory 'c/distr/CUnit-2.1-2'
$
----
8. Если вы используете версию Java 7 Update 21, 25 или 40, необходимо применить временное решение link:https://netbeans.org/bugzilla/show_bug.cgi?id=236867[+проблемы 236867+], чтобы использовать CUnit для выполнения заданий этого практического руководства.

1. Перейдите в раздел Сервис > Параметры > C/C++ > Средства сборки и выберите набор средств MinGW.
2. Измените запись комынды make на make.exe без указания полного пути.
3. Выйдите из среды IDE.
4. В Windows 7 или более поздних версиях введите *var* в поле поиска в меню 'Пуск' для быстрого поиска ссылки 'Изменит системные переменные среды'.
5. Перейдите на вкладку 'Дополнительно' и щелкните 'Переменные среды'.
6. На панели 'Системные переменные' в диалоговом окне 'Переменные среды' нажмите 'Создать'.
7. В поле 'Имя переменной' введите MAKE, а в поле 'Значение переменной' - make.exe.
8. Нажмите кнопку OK в каждом диалоговом окне, чтобы сохранить изменения.
9. Запустите IDE и перейдите к следующему разделу.

После выполнения команды make install инфраструктура CUnit готова к использованию в среде IDE. Мoжно переходить к разделу <<project,Создание проекта>>.


=== Установка CUnit на Windows и Cygwin

В Cygwin для установки CUnit можно использовать стандартный установщик Cygwin, setup-x86.exe или setup-x86_64.exe, который можно загрузить на веб-сайте http://cygwin.com/install.html. Пакет CUnit находится в категории 'Библиотеки', и его можно установить точно так же, как и другие пакеты.

Проверьте правильность используемой версии. Если вы работаете в 64-разрядной версии IDE NetBeans, необходимо использовать 64-разрядную версию Cygwin и CUnit.

Если среда Cygwin еще не установлена, воспользуйтесь общими инструкциями по установке Cygwin в разделе link:../../../community/releases/80/cpp-setup-instructions.html#cygwin[+ Настройка NetBeans IDE для C/C++/Fortran+]. Чтобы установить CUnit, можно выбрать соответствующий файл в категории 'Библиотеки' в программе установки.


== Создание проекта для учебного курса

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

1. Выберите команду "Файл" > "Новый проект".
2. В мастере создания проектов выберите 'C/C++', а затем 'Приложение C/C++'.
3. В диалоговом окне 'Создание приложения C/C++' выберите 'Создать основной файл', затем выберите язык C. Оставьте все остальные настройки по умолчанию без изменения.
image::images/c-unit-new-project.png[]
4. Нажмите 'Готово'. В результате будет создан проект Cpp_Application__x_.
5. В окне 'Проекты' откройте папку 'Исходные файлы' и дважды щелкните файл `main.c`, чтобы открыть его в редакторе. Содержимое файла будет выглядеть примерно так, как показано на рисунке:
image::images/c-unit-mainc-initial.png[]
6. Чтобы дать программе задачу, замените код в файле `main.c` на следующий код. В результате получится простая программа вычисления факториала:

[source,c]
----

#include <stdio.h>
#include <stdlib.h>

long factorial(int arg) {
    long result = 1;
    int i;
    for (i = 2; i <= arg; ++i) {
        result *= i;
     }
    return result;
}

int main(int argc, char** argv) {
    printf("Type an integer and press Enter to calculate the integer's factorial: \n");
    int arg;
    fflush(stdout);
    scanf("%d", &amp;arg);
    
    printf("factorial(%d) = %ld\n", arg, factorial(arg));

    return (EXIT_SUCCESS);
}
 
----

После редактирования файл принимает следующий вид:

image::images/c-unit-mainc-edited.png[]
7. Сохраните файл нажатием клавиш Ctrl+S.
8. Выполните сборку и запуск проекта, чтобы проверить его работоспособность. Для этого нажмите кнопку 'Выполнить' на панели инструментов IDE.
Если в качестве целого числа указать 8, должен получиться следующий результат:
image::images/c-unit-output-factorial.png[]

На некоторых платформах может потребоваться двукратное нажатие на клавишу Enter.


== Добавление тестов CUnit в управляемый проект NetBeans

В процессе разработки приложения полезно добавить модульные тесты.

Каждый тест должен содержать функцию `main` и создавать один исполняемый файл.

1. В окне 'Проекты' дважды щелкните исходный файл `main.c` и выберите Создать тест > Создать тест CUnit.
image::images/c-unit-create-test.png[]

Открывается мастер создания тестов.

2. В окне 'Выбор элементов' установите флажок напротив функции `main`. В результате будут выбраны все функции в файле `main`. В нашей программе есть только одна функция - `factorial()`.
3. Нажмите 'Далее'.
4. Оставьте заданное по умолчанию имя New CUnit Test без изменения и нажмите 'Готово'.

В структуре папки 'Файлы тестов' появляется новый узел New CUnit Test.

Папка New CUnit Test содержит следующие шаблоны файлов для теста. В эту папку можно добавлять новые файлы тем же способом, каким вы добавляете исходные файлы в проект - с помощью команды в контекстном меню папки.
5. Разверните структуру папки New CUnit Test. В этой структуре должен присутствовать файл `newcunittest.c`. Откройте этот файл в редакторе.
6. В файле `newcunittest.c` обратите внимание на оператор `#include "CUnit/Basic.h"`, предназначенный для обращения к библиотеке CUnit. Файл `newcunittest.c` содержит автоматически генерируемую тестовую функцию `testFactorial` для функции `factorial()` в основном файле `main.c`.

image::images/c-unit-includes.png[]

Если среда IDE не обнаружила файл `CUnit/Basic.h`, можно изменить путь include, чтобы он указывал на правильное местоположение. Например, если библиотека CUnit установлена в Windows в каталог `C:\Tools\CUnit-2.1-2`, необходимо изменить путь на следующий: 

`#include <C:\Tools\CUnit-2.1-2\CUnit\Headers\Basic.h>`

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


== Выполнение теста C Unit

В среде IDE предусмотрено несколько способов выполнения тестов. Для запуска тестов можно щелкнуть правой кнопкой мыши узел проекта, папку 'Файлы теста или вложенную папку теста и выбрать Тест. Также можно выбрать команду Выполнить > Тестировать проект в строке меню или нажать сочетание клавиш Alt+F6.

1. Запустите тест, щелкнув правой кнопкой мыши папку New CUnit Test и выбрав 'Тест'.

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

Если окно 'Результаты теста' не отображается, откройте его самостоятельно. Для этого выберите Окно > Средства IDE > Результаты теста или нажмите сочетание клавиш Alt+Shift+R.

image::images/c-unit-run-test-orig.png[]
2. Окно 'Результаты теста разделено на две части. 
В правой части отображаются консольные выходные данные тестов. В левой части отображается сводная информация о пройденных и непройденных тестах, а также описание непройденных тестов.
3. В окне 'Результаты теста дважды щелкните узел `testFactorial caused an ERROR` для перехода к функции `testFactorial` в редакторе исходного кода. 
Очевидно, что эта функция сама по себе ничего не проверяет, а только подтверждает, что модульный тест не пройден, задавая параметр CU_ASSERT(0). Значение условия равно 0, что эквивалентно значению FALSE, поэтому инфраструктура CUnit интерпретирует это значение как неуспешный результат теста.
4. Измените строку CU_ASSERT(0) на CU_ASSERT(1) и сохраните файл (Ctrl+S).
5. Запустите тест повторно, щелкнув правой кнопкой мыши папку New CUnit Test и выбрав 'Тест'.
В окне 'Результаты теста выводятся данные, указывающие на то, что тест пройден.
image::images/c-unit-run-test-pass.png[]


== Добавление еще одного теста CUnit

1. Создайте общий шаблон теста CUnit. Для этого щелкните правой кнопкой мыши папку 'Файлы тестов' и выберите 'Создать тест CUnit'.
image::images/c-unit-new-cunit-test.png[]
2. Назовите тест My CUnit Test (имя файла должно иметь вид `mycunittest`) и нажмите 'Готово'.
image::images/c-unit-create-mycunittest.png[]
3. Создается новая папка теста My CUnit Test. Эта папка содержит файл `mycunittest.c`, который открывается в редакторе.
4. Изучите файл теста `mycunittest.c`. Этот файл содержит два теста. Тест с именем test1 будет пройден, поскольку имеет значение TRUE, а тест с именем test2 завершится с ошибкой, поскольку имеет значение FALSE (2*2 не равно 5).

[source,java]
----

void test1()
{
CU_ASSERT(2*2 == 4);
}
void test2()
{
CU_ASSERT(2*2 == 5);
}    
----
5. Выполните тест так же, как предыдущий. Отобразится следующий результат:
image::images/c-unit-run-mytest1.png[]
6. Выполните все тесты. Для этого в главном меню IDE выберите Запуск > Тестировать проект (Cpp_Application__x_). Будут выполнены оба набора тестов, и результаты их выполнения (успешные и неуспешные) отобразятся в окне 'Результаты теста'.
7. Наведите указатель мыши на непройденный тест, чтобы просмотреть сведения об ошибке.
image::images/c-unit-test-fail-annotation.png[]
8. С помощью кнопок в левой части окна 'Результаты теста' можно показать или скрыть пройденные или непройденные тесты.


== Отладка теста My CUnit Test

Отладка тестов осуществляется так же, как и отладка исходных файлов проекта. Процесс отладки описан в link:https://netbeans.org/kb/docs/cnd/debugging.html[+Практическом руководстве по отладке проектов C/C+++].

1. В окне 'Проекты' щелкните правой кнопкой мыши папку My CUnit Test и выберите 'Шаг с заходом в тест'.

Также можно запустить отладчик. Для этого щелкните тест правой кнопкой мыши в окне 'Результаты теста' и выберите 'Отладка'.


Отображается панель инструментов отладчика.
2. Нажмите кнопку 'Шаг с заходом' для пошагового выполнения программы. При каждом нажатии этой кнопки выполняется один оператор.
image::images/c-unit-debug-icons.png[]
3. Откройте окно 'Стек вызовов' (Окно > Отладка > Стек вызовов), чтобы просматривать вызовы функций во время пошагового выполнения теста.


== Добавление простого тeста

Простые тесты C используют собственную простую инфраструктуру тестирования IDE. Для использования простых тестов не требуется загружать отдельную инфраструктуру тестирования.

1. В окне 'Проекты' щелкните правой кнопкой мыши исходный файл  ``main.c``  и выберите Создать тест > Создать простой тест C.
image::images/c-unit-mainc-new-simple-test.png[]
2. В окне 'Выбор элементов' мастера создания тестов установите флажок напротив функции  ``main``  и нажмите 'Далее'.
image::images/c-unit-mainc-new-simple-test-select.png[]
3. В полях 'Имя' и 'Местоположение' оставьте заданное по умолчанию имя New C Simple Test и нажмите 'Готово'.

В структуре папки 'Файлы тестов' появляется новый узел New C Simple Test.

4. Разверните структуру папки New C Simple. Эта папка должна содержать файл `newsimpletest.c`. Откройте этот файл в редакторе исходного кода.
image::images/c-unit-mainc-new-simple-test-folder.png[]
5. Аналогично тесту CUnit файл `newsimpletest.c` содержит автоматически генерируемую тестовую функцию `testFactorial` для функции `factorial()` основного файла `main.c`.
image::images/c-unit-mainc-new-simple-test-code.png[]

Оператор  ``if``  должен проверять условие. Если условие имеет значение true, тест считается непройденным. Маркер  ``%%TEST_FAILED%%``  инициирует отображение графического обозначения неуспешного выполнения тестов в окне 'Результаты теста'. Оператор  ``if``  в созданном тесте задает для условия значение true (1), поэтому при запуске этого теста без предварительного редактирования он всегда будет неуспешным.

Другие маркеры в функции  ``main`` , такие как  ``%%TEST_STARTED%%``  и  ``%%TEST_FINISHED%%``  упрощают чтение выходных данных в командной строке при выполнении тестов.

Параметр  ``time=0``  используется для добавления в тест измерения времени.

Параметр  ``message``  позволяет выводить сообщение о неуспешном результате теста.

6. Выполните тест. В окне 'Результаты теста' должен отобразиться неуспешный результат.

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


== Изменение простого теста C

1. Скопируйте и вставьте новую функцию под функцией `testFactorial`. 
Новая функция имеет вид:

[source,java]
----

void testNew() {
    int arg = 8;
    long result = factorial(arg);
    if(result != 40320) {
        printf("%%TEST_FAILED%% time=0 testname=testNew (newsimpletest) message=Error calculating %d factorial.\n", arg);
    }
}
----

Функцию `main` также необходимо изменить, чтобы она могла вызывать новую тестовую функцию.

2. Скопируйте следующие строки в функции `main`:

[source,java]
----

printf("%%TEST_STARTED%%  testFactorial (newsimpletest)\n");
    testFactorial();
    printf("%%TEST_FINISHED%% time=0 testFactorial (newsimpletest)\n");
    
----
3. Вставьте скопированные строки сразу под исходными и измените в скопированных строках имя `testFactorial` на `testNew`. Во всем файле необходимо изменить три вхождения. 
Готовый файл `newsimpletest.c` выглядит следующим образом:

[source,c]
----

#include <stdio.h>
#include <stdlib.h>

/*
 * Simple C Test Suite
 */

long factorial(int arg);

void testFactorial() {
    int arg;
    long result = factorial(arg);
    if(1 /*check result*/) {
        printf("%%TEST_FAILED%% time=0 testname=testFactorial (newsimpletest) message=When value is 1 this statement is executed.\n");
    }
}


void testNew() {
    int arg = 8;
    long result = factorial(arg);
    if(result != 40320) {
        printf("%%TEST_FAILED%% time=0 testname=testNew (newsimpletest) message=Error calculating %d factorial.\n", arg);
    }
}


int main(int argc, char** argv) {
    printf("%%SUITE_STARTING%% newsimpletest\n");
    printf("%%SUITE_STARTED%%\n");

    printf("%%TEST_STARTED%%  testFactorial (newsimpletest)\n");
    testFactorial();
    printf("%%TEST_FINISHED%% time=0 testFactorial (newsimpletest)\n");

    printf("%%TEST_STARTED%%  testNew (newsimpletest)\n");
    testNew();
    printf("%%TEST_FINISHED%% time=0 testNew (newsimpletest)\n");

    printf("%%SUITE_FINISHED%% time=0\n");

    return (EXIT_SUCCESS);
}


----
4. В окне 'Проекты' запустите тест, щелкнув правой кнопкой мыши папку New C Simple Test и выбрав 'Тест'. 
В окне 'Результаты теста' должны отобразиться следующие данные:
image::images/c-unit-simpletest-results.png[]

Если вы не уверены, что тест testNew пройден, нажмите значок в виде зеленой галочки в левой части окна 'Результаты теста', чтобы просмотреть все пройденные тесты.

Маркер %%TEST_FAILED%% инициирует отображение неуспешного результата теста в окне 'Результаты теста'. Оператор if должен проверять условие. Если это условие не имеет значения true, результат теста будет неуспешным.

Маркер %%SUITE_STARTING%% и другие подобные маркеры не выводятся в окне результатов в среде IDE. Эти маркеры используются для консольного вывода.


== Выполнение тестов в интерфейсе командной строки

Тесты можно создавать в командной строке за пределами IDE с помощью команды `make build-tests` и выполнять с помощью команды `make test`. Если проект находится в каталоге ~/NetBeansProjects/Cpp_Application__x_ в системе Linux, сборка и выполнение тестов будут выполняться, как показано ниже.

1. Откройте окно терминала в IDE (выберите Окно > Результаты и нажмите кнопку 'Терминал' в левой части окна 'Результаты'). В рабочем каталоге текущего проекта откроется окно терминала.
2. В окне терминала введите команды, выделенные полужирным шрифтом:

[source,java]
----

 *make test*
----

Результаты сборки и выполнения теста должны выглядеть примерно так. Примечание. Некоторые результаты команды `make` удалены.


[source,java]
----

"make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
make[1]: Entering directory `/home/tester/NetBeansProjects/CppApplication_1'
"make"  -f nbproject/Makefile-Debug.mk dist/Debug/GNU-Linux-x86/cppapplication_1
make[2]: Entering directory `/home/tester/NetBeansProjects/CppApplication_1'
make[2]: `dist/Debug/GNU-Linux-x86/cppapplication_1' is up to date.
...

     CUnit - A Unit testing framework for C - Version 2.1-2
     http://cunit.sourceforge.net/


Suite: mycunittest
  Test: test1 ... passed
  Test: test2 ... FAILED
    1. tests/mycunittest.c:33  - 2*2 == 5
  Test: test3 ... passed

--Run Summary: Type      Total     Ran  Passed  Failed
               suites        1       1     n/a       0
               tests         3       3       2       1
               asserts       3       3       2       1
%SUITE_STARTING% newsimpletest
%SUITE_STARTED%
%TEST_STARTED%  testFactorial (newsimpletest)
%TEST_FAILED% time=0 testname=testFactorial (newsimpletest) message=error message sample
%TEST_FINISHED% time=0 testFactorial (newsimpletest)
%SUITE_FINISHED% time=0


     CUnit - A Unit testing framework for C - Version 2.1-2
     http://cunit.sourceforge.net/


Suite: newcunittest
  Test: testFactorial ... passed

--Run Summary: Type      Total     Ran  Passed  Failed
               suites        1       1     n/a       0
               tests         1       1       1       0
               asserts       1       1       1       0
make[1]: Leaving directory `/home/tester/NetBeansProjects/CppApplication_1'

    
----


== Добавление поддержки других инфраструктур тестирования

Чтобы добавить поддержку предпочтительной инфраструктуры тестирования C/C++, необходимо создать модуль NetBeans. См. документ для разработчиков NetBeans, link:http://wiki.netbeans.org/CND69UnitTestsPluginTutotial[+Руководство по созданию подключаемого модуля тестирования C/C+++] в статье о NetBeans.

link:mailto:users@cnd.netbeans.org?subject=Feedback:%20Adding%20Unit%20Tests%20to%20a%20C/C++%20Project%20-%20NetBeans%20IDE%207.4%20Tutorial[+Отправить отзыв по этому учебному курсу+]


