С Новым годом! Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 28.12.2015
Сообщений: 16
1

Unit-test для простого консольного приложения

08.10.2019, 23:44. Показов 2603. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Делаю лабу, но никак не могу разобраться и сделать юнит тест для консольного приложения, которое меняет условные буквы на условные знаки

g - на >
l - на <
e - на =
(greater, less, equal)

Вот код самого консольного приложения

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int main()
{
    using std::string;
    using std::cout;
    using std::endl;
    using std::replace;
 
    string s("3 g 1 l 5 e 5");
 
    replace(s.begin(), s.end(), 'g', '>');
    replace(s.begin(), s.end(), 'l', '<');
    replace(s.begin(), s.end(), 'e', '=');
    
    cout << s << endl;
    std::system("pause");
    return 0;
}
помогите разобраться с юнит-тестом, который даст "добро" (выдаст текстовое подтверждение), когда увидит, что замена произошла успешно
желательно, что бы в юнит тесте возможно было написать другую строку, а не использовать ту, которая в основном коде.


Добавлено через 40 секунд
возможно не в тот раздел написал, делаю в Visual Studio 2019
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.10.2019, 23:44
Ответы с готовыми решениями:

С++ Unit Test (модульное тестирование)
Вопроса по сути два. 1. что используете для модульного тестирования и почему отдаете этому...

Создание GUI для консольного приложения на C++
Я хотел создать GUI для консольного приложения на C++. Но возникла одна проблема - передавать...

Создание простого приложения для Windows 9x/NT, решил как смог. Пожалуйста подскажите что исправить или добавить
задание: окно фон зелёный размер 500х400 курсор IDT_HAND При закрытии...

GUI через c++ builder для простого консольного приложения
Есть вот такая простая консольная программа,помогите запилить GUI через C++ Builder,лучше всего...

1
1394 / 1023 / 325
Регистрация: 28.07.2012
Сообщений: 2,813
13.10.2019, 16:40 2
Relvie, первым делом тебе нужно определиться с фреймворком для unit-тестирования. Например, в компонентах Visual Studio 2019 можно выбрать Google Test и Boost.Test, а еще там есть какой-то свой встроенный формат.

Чтобы написать нормальный unit-тест, тебе необходимо в начале этот unit выделить из своего кода. В твоем случае будет что-то вида:

C++
1
2
3
4
5
6
7
8
std::string my_replace(std::string s)
{
    replace(s.begin(), s.end(), 'g', '>');
    replace(s.begin(), s.end(), 'l', '<');
    replace(s.begin(), s.end(), 'e', '=');
 
    return std::move(s);
}
После этого, для такого unit'а уже можно писать тест, но для этого придется изучить документацию по выбранному фреймворку.
0
13.10.2019, 16:40
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.10.2019, 16:40
Помогаю со студенческими работами здесь

Создание простого консольного ООП-приложения любой тематики
Всем привет, нужна помощь в создании простого консольного приложения. Вот несколько условий: 1....

Что такое unit test и regression test
Что такое unit test и regression test?

Нужны исходники простого простого приложения под Android для примера
можете дать ссылку на приложение под андроид?не Hello Word а какое нибудь другое но тоже простое на...

Как создать Unit test для WEB API
Имеется контроллер, работу которого необходимо протестировать Unit тестом. Может кто подскажет, с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Что такое HCL Notes и как с ним работать
InfoMaster 10.01.2025
HCL Notes (ранее известный как IBM Notes и Lotus Notes) представляет собой комплексную платформу для совместной работы и обмена информацией в корпоративной среде. Это многофункциональное решение,. . .
Как работать с Git из Windows и Visual Studio
InfoMaster 10.01.2025
Работа с Git в Windows Работа с Git в операционной системе Windows может быть осуществлена с помощью различных инструментов, каждый из которых обладает своими уникальными возможностями и. . .
Аналог оператора switch case в Python
InfoMaster 10.01.2025
Оператор switch case используется в программировании для выбора одного из нескольких вариантов исполнения кода. Однако в языке Python этот оператор отсутствует. Понимание аналогов switch case в. . .
Отличия абстрактного класса от интерфейса
InfoMaster 10.01.2025
В современной разработке программного обеспечения существуют два основных механизма реализации абстракции: абстрактные классы и интерфейсы. Эти инструменты, хотя и схожи в своей основной цели -. . .
Как работать в Git
InfoMaster 10.01.2025
Git — это одна из наиболее популярных систем контроля версий, которая активно используется разработчиками по всему миру. Она позволяет эффективно управлять изменениями в коде, координировать работу. . .
Реализация передвижения персонажа в Unity3d на C#
InfoMaster 10.01.2025
Реализация передвижения персонажа в Unity3D начинается с правильной настройки проекта. Этот этап критически важен для создания отзывчивого и плавного управления. Рассмотрим основные шаги для создания. . .
Docker: руководство для начинающих
InfoMaster 10.01.2025
В современном мире разработки программного обеспечения контейнеризация стала неотъемлемой частью процесса создания и развертывания приложений. Docker, как ведущая платформа контейнеризации, произвела. . .
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
Что такое NullReferenceEx­­­ception и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru