Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 28.12.2016
Сообщений: 57

Unit тесты для программы считающей количество слов

08.04.2017, 15:36. Показов 1160. Ответов 2
Метки нет (Все метки)

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

Мне нужно дописать к ней тест который сравнивает ожидаемое значение и фактическое


Я предполагаю что если переменной kolvo присвоить значение kol то все заработает вот только сделать это у меня никак не удается помогите пожалуйста

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication81
{
    public class program
    {
        public static void Main(string[] args)
        {
 
 
            FileStream stream = new FileStream("text.txt", FileMode.Open);
            StreamReader reader = new StreamReader(stream);
            string str = reader.ReadToEnd();//считывает весь текст из файла
            stream.Close(); //закрывает считываемый файл и освобождает все ресурсы
            Console.WriteLine(str);
            double kol = str.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries)
                .Where(n => n.Length < 5).Count();
            Console.WriteLine("Количество слов длинной в 4 символа ={0} ", kol);
            Console.ReadKey();
            
 
        }
 
        public double funcF( double kolvo)
        {
 
                   
          //kolvo = kol; ???????
 
            
            
 
            return 0;
        }
 
    }
}

///////////Тест/////////////

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
 
namespace UnitTestProject1
{
    [TestClass]
    public class UnitTest1
    {
        [TestMethod]
        public void TestMethod1()
        {
           
            double kolvo = 27;
            
 
 
            double expected = 27;
 
            ConsoleApplication81.program d = new ConsoleApplication81.program();
            double actual = d.funcF(kolvo);
            Assert.AreEqual(expected, actual);
        }
    }
}
Добавлено через 1 час 50 минут
Вот еще вариант той же программы
Пишет 1 тест сбой


C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication82
{
    public class program
    {
       public static double str(params string[] m)
        {
            FileStream stream = new FileStream("text.txt", FileMode.Open);
            StreamReader reader = new StreamReader(stream);
            string str = reader.ReadToEnd();//считывает весь текст из файла
            stream.Close(); //закрывает считываемый файл и освобождает все ресурсы
            Console.WriteLine(str);
            double kol = str.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries)
                .Where(n => n.Length < 5).Count();
            Console.WriteLine("Колличество слов длинной в 4 символа ={0} ", kol);
            Console.ReadKey();
 
            return kol;
            
        }
       //public double funcF(double x)
       //{
       //    x = kol;
       //    return x;
       //}
 
 
 
        static void Main(string[] args)
        {
 
            Console.WriteLine(str());
            Console.ReadKey();
        }
    }
}

///////////////////////////////

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using ConsoleApplication82;
 
namespace UnitTestProject1
{
    [TestClass]
    public class UnitTest1
    {
        [TestMethod]
        public void TestMethod1()
        {
            double r1 = program.str();
            Assert.AreEqual<double>(27, r1);
 
        }
    }
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.04.2017, 15:36
Ответы с готовыми решениями:

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

Unit тесты для сайта
Добрый вечер. Уважаемые форумчане можете объяснить как пользоваться unit тестами. Надоело вручную проверять сайт после каждого изменения...

Как лучше всего писать Unit тесты для кода?
Как лучше всего писать тесты для кода? В том плане что к примеру есть специальные библиотеки и т.д., что лучше?

2
 Аватар для Lexeq
1151 / 743 / 483
Регистрация: 21.01.2014
Сообщений: 1,903
08.04.2017, 15:47
Сделайте отдельную функцию, которая будет принимать строку и возвращать количество нужных слов. И пишите тест для этой функции. Код, который сейчас у вас, тестировать нельзя.
0
0 / 0 / 0
Регистрация: 28.12.2016
Сообщений: 57
08.04.2017, 16:35  [ТС]
Все получилось спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.04.2017, 16:35
Помогаю со студенческими работами здесь

Unit тесты
Не подскажете как грамотно составить unit тесты? И какие основные моменты нужно тестировать в приложениях? То есть например если я делаю...

Unit тесты
Доброе время суток! Хочу попросить сторонников и противников Unit тестирования высказать свое мнение по этому поводу. Какие негативные...

Unit-тесты
Как для класса Person сделать unit-тесты (equalsverifier) ??? public class Person { //создание класса Person private...

Boost Unit тесты
пытаюсь создать тест, но выходят ошибки линковщика. Где я неправильно линкую? Перед этим переименовал некоторые функции в zad1.h, ну и...

Написать Unit тесты
Написать Unit тесты к данному коду: import java.util.Scanner; public class Game { public static void main(String args) { ...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru