Статья опубликована в рамках: XII Международной научно-практической конференции «Современная психология и педагогика: проблемы и решения» (Россия, г. Новосибирск, 18 июля 2018 г.)

Наука: Педагогика

Секция: Информационные технологии в образовании

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Гайнанова Р.Ш. РАЗРАБОТКА ТЕСТИРУЮЩЕЙ ПРОГРАММЫ // Современная психология и педагогика: проблемы и решения: сб. ст. по матер. XII междунар. науч.-практ. конф. № 7(11). – Новосибирск: СибАК, 2018. – С. 25-31.
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

РАЗРАБОТКА ТЕСТИРУЮЩЕЙ ПРОГРАММЫ

Гайнанова Роза Шакирзяновна

преподаватель кафедры Общеобразовательных дисциплин Казанского национального исследовательского технологического университета,

РФ, г. Казань

DEVELOP TESTING PROGRAMS

 

Roza Gaynanova

lecturer of the Department of General Educational Disciplines Kazan national research Technological University

Russia, Kazan

 

АННОТАЦИЯ

В статье рассматривается создание тестирующей программы с использованием языка программирования C# в среде Visual Studio 2012. По результатам тестирования создается текстовый документ, где сохраняются данные о студенте и результаты тестирования. В работе показано создание программного приложения для решения поставленной задачи.

ABSTRACT

The article is devoted to the creation of a testing program using the C # programming language in the Visual Studio 2012 environment. The test results create a text document where the student data and test results are saved. The paper shows the creation of a software application to solve the task.

 

Ключевые слова: тест, тестирование, элементы управления, текстовый документ.

Keywords: test, testing, controls, text document.

 

Тестирование широко применяется для оценки уровня знаний в учебных заведениях, при приеме на работу, для оценки квалификации персонала и т. д. Тест – это последовательность вопросов, на который испытуемый должен ответить, выбрав правильный ответ из нескольких предложенных вариантов [1, с.287].

Создаваемая программа должна отвечать следующим требованиям:

  1. Программа должна быть универсальной, у проводящего тестирование должна быть возможность самостоятельно без участия программиста подготовить тестовое задание.
  2. Не должно быть ограничений на количество вопросов в тесте.
  3. Ответ на вопрос должен осуществляться путем выбора одного ответа из нескольких вариантов.
  4. В программе не должно быть возможности возврата к предыдущему вопросу.

Тестовые вопросы записываются в текстовый файл. В качестве примера приведен файл теста для проверки знаний у студентов по операционным системам. Первая строка – это название теста, которое запоминается в переменной tema для вывода в текстовый документ. Четвертая строка – максимальное количество баллов за тест. С пятой строки начинаются тестовые вопросы. В следующей строке указано число вариантов ответов и номер правильного ответа. Далее идут варианты ответов. Максимальное количество вариантов ответов четыре, минимальное два.

Операционные системы

Сейчас Вам будут предложены вопросы по Операционным системам.

Вы должны из нескольких предложенных вариантов ответов выбрать правильный.

10

Операционная система представляет из себя:

4 1

комплекс программ специального назначения

комплекс аппаратных средств

совокупность ресурсов компьютера

комплекс инструментальных программ

Командный процессор - это:

4 3

программа

устройство

часть центрального процессора

ресурс

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

string fam, gr, tema;

int nv = 0; // номер тестового вопроса

int kv, po, kol, mbal;

// в массив будут записаны результаты ответов на вопросы теста:

// 1 – если ответ правильный, 0 – если ответ неправильный

int[] V = new int[100];

На окне формы три кнопки: «ОК», «Далее», «Завершить». При запуске программы на окне формы отображается кнопка «ОК», остальные кнопки невидимы и недоступны.

При запуске приложения процедура обработки события Form1_Activate метки, предназначенные для вывода результатов, делает невидимыми и инициализирует массив V, предназначенный для записи результатов ответов на вопросы теста.

Перед началом тестирования студент должен ввести фамилию и номер группы и нажать кнопку «ОК». Данные о студенте сохраняются в переменных Fam и Gr. После нажатия кнопки «ОК» отображается информация о назначении теста, после чего эта кнопка становится невидимой и недоступной. Отображается кнопка «Далее», свойства Visible и Enabled устанавливаются в true.

Пока не конец файла, после нажатия кнопки «Далее» осуще­ствляется переход к следующему вопросу. Номер вопроса и сам вопрос отображаются на метках label1 и label2, варианты ответов – на переключателях radioButton. Для этого разработан следующий программный код:

nv = nv + 1;

label2.Text = "Вопрос " + Convert.ToInt32(nv);

str = ft.ReadLine(); label1.Text = str;

str = ft.ReadLine();

string[] a = str.Split(' ');

kol = Convert.ToInt32(a[0]); npo = Convert.ToInt32(a[1]);

// организован цикл по количеству вариантов ответов, которые

// считываются в массив otv, оттуда, если элемент массива

// не равен пустому значению – в соответствующий переключатель

for (int i = 0; i < kol; i = i + 1)

otv[i] = ft.ReadLine();

if (otv[0] != "")

{

radioButton1.Text = otv[0];

radioButton1.Visible = true;

}

. . . . .

if (otv[2] != "")

{

radioButton3.Text = otv[2];

radioButton3.Visible = true;

}

else

radioButton3.Visible = false;

. . . . .

Далее переключатели делаются невыбранными. Свойство Checked устанавливается в false.

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

 

Рисунок 1. Вид окна с тестовым вопросом и вариантами ответов

 

После ответа на все вопросы выводится окно с результатами (рис. 2). Переключатели делаются невидимыми, метки, предназначенные для вывода результатов, - видимыми. Здесь указывается, сколько вопросов в тесте, на сколько вопросов тестируемый ответил правильно и сколько баллов набрал. Также отображаются результаты, на какие вопросы теста он ответил правильно, на какие – нет. Результаты ответов на вопросы теста отображаются в элементе управления dataGridView. В dataGridView четыре столбца, количество строк зависит от количества вопросов теста. Одномерный массив V переписывается в двумерный массив OV, с n-строками и четырьмя столбцами. Результаты тестирования также записываются в текстовый документ. Для этого разработан следующий программный код:

po = 0; // подсчитывается количество правильных ответов

for(int i=0; i<=nv; i=i+1)

if(v[i]==1) po=po+1;

label2.Text = "Результат";

button2.Visible=false; // кнопка «Далее» становится невидимой

button2.Enabled=false; // и недоступной

button3.Visible = true; button3. Enabled = true;

label6.Text = nv.ToString(); label8.Text = po.ToString();

bal = po * mbal / nv; label10.Text = bal.ToString();

int i2=1, j, i1, n;

if (nv % 4 != 0) n = nv / 4 + 1;

else n = nv / 4;

for (j=0; j<4; j=j+1)

for(i1=0; i1<n; i1=i1+1)

{ ov[i1,j]=v[i2]; i2=i2+1;}

dataGridView1.Visible = true;

AddColumns(n, dataGridView1);

AddRows(n, dataGridView1);

for ( i1 = 0; i1 < n; i1++)

for (j = 0; j < 4; j++)

dataGridView1.Rows[i1].Cells[j].Value = ov[i1, j].ToString();

StreamWriter write_text; //Класс для записи в файл

FileInfo fw = new FileInfo(@"C:\Тест\Result.txt");

write_text = fw.AppendText(); //Дописываем инф. в файл, если файл не существует он создастся

str = "Тема: " + tema; write_text.WriteLine(str);

bal = po * mbal / nv;

write_text.WriteLine("Данные о студенте:");

str = "Фамилия " + fam + " Группа " + gr;

write_text.WriteLine(str);

DateTime thisDay = DateTime.Today;

str = "Дата: " + thisDay.ToString("D"); write_text.WriteLine(str);

. . . . .

Рисунок 2. Вид окна с результатами

 

Ниже приведен вид фрагмента документа созданного по результатам тестирования:

Тема: Операционные системы

Данные о студенте:

Фамилия Иванов Группа 10372-с82

Дата: 12 июля 2018 г.

Количество заданных вопросов: 20

Число правильных ответов: 16

Баллы: 8

 1-5 6-10 11-15 16-20

 1 1 1 0

 1 1 0 1

 1 1 0 1

 1 1 1 1

 1 1 1 0

Ввод-вывод в C# выполняется с помощью подсистемы ввода-вывода и классов библиотеки .NET. Выполнять обмен с внешними устройствами можно на уровне [2, с.255]:

  • двоичного представления данных (BinaryReader, BinaryWriter);
  • байтов (FileStream);
  • текста, то есть символов (StreamWriter, StreamReader).

Символьные потоки StreamWriter и StreamReader работают с Unicode символами (каждый символ кодируется двумя байтами), ими удобнее всего пользоваться для работы с файлами, предназначенными для восприятия человеком. Данное приложение не будет работать с файлами, созданными в ASCII кодах (символы кодируются одним байтом). Символы русского алфавита заменяются на знаки . Для создания текстового файла с тестовыми вопросами в той же среде должна быть разработана специальная программа.

Компьютерное тестирование обладает рядом преимуществ, которые позволяют:

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

 

Список литературы:

  1. Культин Н.Б. Основы программирования в Microsoft Visual C# 2010. — СПб.: БХВ-Петербург, 2017. — 364 с.
  2. Павловская Т.А. C# Программирование на языке высокого уровня: Учебник для вузов. — СПб.: Питер. 2013. — 432 с.
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий