В данной статье мы рассмотрим процесс создания психологических тестов с помощью системы тестирования Let’s test . Составленные с помощью этого инструмента тесты доступны для прохождения прямо на сайте в режиме онлайн. Конструктор тестирований позволяет не только создавать как простые, так и сложные психологические тесты, он автоматизирует обработку и анализ результатов.
Пройти выбранный для примера тест можно по следующей ссылке: http://letstest.ru/testpanel/exams/start/9932
Пример теста
Чтобы начать процесс создания теста, Вы должны быть зарегистрированы и находиться в панели управления организацией.
В качестве примера мы возьмем «Тест на эмоциональный интеллект (методика Н. Холла на эмоциональный интеллект)» и поэтапно рассмотрим, как добавить его в систему. Данный тест состоит из тридцати вопросов, каждый из которых имеет шесть вариантов ответов с разным количеством баллов. Ключ к тесту имеет следующий вид:

Создание тестов для проведения экзаменов
- Шкала «Эмоциональная осведомленность» — вопросы 1, 2, 4, 17, 19, 25.
- Шкала «Управление своими эмоциями» — вопросы 3, 7, 8, 10, 18, 30.
- Шкала «Самомотивация» — вопросы 5, 6, 13, 14, 16, 22.
- Шкала «Эмпатия» — вопросы 9, 11, 20, 21, 23, 28.
- Шкала «Управление эмоциями других людей» — вопросы 12, 15, 24, 26, 27, 29.
Подсчет результата теста осуществляется следующим образом: по каждой шкале высчитывается сумма баллов. Чем больше сумма баллов, тем больше выражено данное эмоциональное проявление.
Создание шкалы оценок
И так, начнем настройку теста на эмоциональный интеллект. Первым делом необходимо создать шкалу оценок. Перейдите на страницу «Тесты» -> «Шкалы оценок» и нажмите на кнопку «Создать шкалу» .
На странице создания шкалы, на вкладке «Основная информация» укажите название шкалы (например, «Тест на эмоциональный интеллект (Тест EQ)»). Чтобы результат теста отображался в баллах, а не в процентах выберите в поле «Тип шкалы» значение «Балльная» .

Далее необходимо добавить в нашу шкалу уровни. Для этого перейдите на вкладку «2. Оценки» . Интегративный (сумма по всем шкалам) уровень эмоционального интеллекта с учетом доминирующего знака определяется по следующим количественным показателям:
- 70 и более — высокий;
- 40–69 — средний
- 39 и менее — низкий.
Добавим в шкалу три уровня, так как это показано на рисунке. Каждый уровень будет показан пользователю, только если он набрал указанное количество баллов. Таким образом, уровень — это оценка, которую получит пользователь для набранного им количества баллов за весь тест.
Следующим этапом является добавление категорий для каждой шкалы из теста. Для этого перейдите на вкладку «2. Категории» .
создание тестов из vord MY TEST

Согласно описанию теста, он будет иметь следующие категории: «Эмоциональная осведомленность» , «Управление своими эмоциями» , «Самомотивация» , «Эмпатия» , «Распознавание эмоций других людей» . Добавим данные категории с помощью кнопки «Добавить категорию» . Для каждой из них необходимо указать название и сообщение, которое будет пояснять данную категорию.
Включим отображение баллов рядом с категориями, установив соответствующий флажок. Также мы никак не будем ограничивать отображение категорий, будут показаны все из них.
На этом изменение шкалы оценок завершено, и ее необходимо сохранить. Чуть позже мы выберем данную шкалу при создании тестирования, таким образом, указав ему, как следует подсчитывать баллы.
Создание вопросов
Следующим этапом является создание вопросов, которые будут использоваться в тесте. Для этого необходимо перейти на страницу «Тесты» -> «База вопросов».

Создадим в базе директорию «Тест на эмоциональный интеллект (Тест EQ)», в которую будем добавлять вопросы. Нажатием на кнопку «Создать вопрос» перейдем на страницу создания вопроса.
Для вопроса необходимо выбрать тип «Выбор одного ответа» . Для данного типа можно добавить несколько вариантов ответов, каждый из которых будет иметь свое количество баллов. Пользователь должен будет выбрать один вариант, и количество баллов за вопрос будет равняться количеству баллов за выбранный ответ.
Укажем название теста как «Вопрос 01» и в дальнейшем будем нумеровать вопросы по порядку (Вопрос 02, Вопрос 03 и т. д.). Также в качестве родительской директории выберите папку «Тест на эмоциональный интеллект (Тест EQ)», которую мы создали ранее.

На вкладке «Вопрос и ответы» необходимо ввести текст вопроса, а также добавить варианты ответов. При добавлении варианта ответа необходимо указать его текст и количество баллов (стоимость ответа). Не забудьте установить номер категории, к которой будут добавлены баллы за выбор данного ответа.

Для этого необходимо обратиться к ключу теста и поставить в поле «Добавлять баллы к категориям (номера через пробел)» номер соответствующей категории из шкалы оценок. Например, для первого вопроса это будет шкала «Эмоциональная осведомленность» и в поле необходимо поставить число 1 . Добавьте, таким образом, все варианты ответов и сохраните вопрос.
После того, как Вы создадите все вопросы для тестирования (для данного теста нужно создать 30 вопросов), перейдите на страницу «Тесты» -> «Тестирования».
Настройка тестирования
Финальным этапом составления теста является процесс настройки тестирования. Для перехода на соответствующую страницу нажмите на кнопку «Создать тестирование» .

На вкладке «1. Основная информация укажите название тестирования, которое будет показано пользователю.
На вкладке «2. Список вопросов» необходимо нажать на кнопку «Добавить вопросы и в появившемся окне выбрать директорию с вопросами к тесту.
На вкладке «3. Страница запуска» в поле «Стартовое сообщение» напишите текст, который увидит пользователь на странице запуска тестирования. Можно, например, написать описание теста.
На вкладке «5. Шкала оценок» необходимо выбрать шкалу, которая была создана нами ранее.

Далее перейдите на вкладку «6. Страница результатов» .
В поле «Финальное сообщение» напишите текст, который увидит пользователь, когда он завершит тестирование. Установите флажки «показывать сообщение о статусе тестирования для шкалы» и «показывать оценку» , чтобы пользователь увидел оценку из нашей шкалы в зависимости от количества набранных баллов.
Также необходимо установить флажок «показывать результат» , чтобы пользователь увидел количество баллов, которое он набрал. Обязательно снимите флажки с полей «показывать диаграмму ответов» , «показывать количество правильных и неправильных ответов» и «показывать статус тестирования» , для нашего типа теста эти данные не имеют значения и пользователь не должен их видеть.
После установки указанных параметров сохраните тестирование. На данном этапе тест можно считать созданным и можно переходить к его проверке.

На странице «Тесты» -> «Тестирования» нажмите на ссылку «получить ссылку» и в появившемся окне щелкните на ссылку для запуска теста. Пройдите полный путь начиная с запуска теста, ответьте на все вопросы и ознакомьтесь со страницей результата.
Поздравляем, Вы успешно создали и прошли психологический тест с помощью системы тестирования Let’s test. Но возможности системы не ограничиваются только выбранным нами в качестве примера тестом на эмоциональный интеллект. С помощью системы тестирования Let’s test можно создать практически любые психологические тесты.
В данной статье описаны основные аспекты составления психологических тестов. Вы можете менять настройки на свое усмотрение, чтобы реализовать поведение Вашего конкретного теста. Например, можно настроить шкалу оценок таким образом, чтобы в качестве результата пользователю показывалась только категория с наибольшим количеством баллов. И оценка для тестирования выставлялась в зависимости от данной категории, а не от общего результата за тест.
Если у Вас возникли трудности при создании психологического теста, напишите нам на [email protected] , мы обязательно Вам поможем и дадим полезные рекомендации по созданию тестов.
Источник: letstest.ru
deefault/TestApp
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Switch branches/tags
Branches Tags
Could not load branches
Nothing to show
Could not load tags
Nothing to show
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Cancel Create
- Local
- Codespaces
HTTPS GitHub CLI
Use Git or checkout with SVN using the web URL.
Work fast with our official CLI. Learn more about the CLI.
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
Latest commit message
Commit time
README.md
1. Используемые технологии, библиотеки и языки
- C#
- Javascript
- HTML/CSS
- .NET Core 2.1
- ASP.NET Core 2.1.1 — платформа веб приложения
- QRCoder 1.3.5 — для генерации QR кода
- Entity Framework Core — для взаимодействий с СУБД
- Git и Github — для контроля версий и взаимодействия между разработчиками
- Bootstrap 4.1.3 — для фронтенд разработки
- Bower 1.3.11 — для контроля javascript зависимостей
- Codemirror — html редактор кода
- jQuery 3.3.1 — для более удобной работы с js на сайте
- Sortable — для перемещения элементов на странице
Вопрос с одним правильным ответом

Вопрос с несколькими правильными ответами

Вопрос на ввод ответа в поле

Задание на восстановление последовательности

Задание на написание кода

3. Пользовательский интерфейс и возможности

Во вкладке «прохождение тестов» находятся тесты, которые пользователь прошел, проходит, или собирается пройти. Также здесь находится интерфейс для добавления теста по ID (Рисунок 10).

Вкладка «создание тестов» позволяет создать свой тест, а также редактировать существующие, которые отображаются в таблице созданных тестов (Рисунок 11).

Страница с редактированием теста содержит интерфейс для добавления, удаления и редактирования вопросов к тесту (Рисунок 12). Также здесь присутствует интерфейс для добавления теста к пользователю (по ID пользователя), либо отображается QR-код, сканируя который пользователь добавляет к себе тест (Рисунок 13).

Пример добавления вопроса показан на рисунке 14.

Также имеется возможность посмотреть результаты пользователей по тесту (Рисунок 15). При нажатии на кнопку «Ответы пользователя» создателю отображаются подробные ответы пользователя на каждый вопрос (Рисунки 16, 17).



Пользователь также может посмотреть свои ответы и правильные (если создатель разрешил отображение правильных ответов) кликнув на ссылку с названием теста в таблице завершенных во вкладке «прохождение тестов».
About
Веб-приложение для создания и прохождения тестов с разным типом заданий
Источник: github.com
Модульное тестирование кода на C++ с Qt Test. Часть 1. Введение
Данное руководство представляет собой введение в модульное тестирование кода на C++ с помощью Qt Test. В нем приводится и подробно анализируется рабочий пример. Предоставляется полный проект qmake и исходный код на C++.
Модульное тестирование кода на C++ с помощью Qt Test
Qt Test – это среда для модульного тестирования кода на C++. Он является частью Qt, что означает, что он включает в себя функции для тестирования графического интерфейса и других элементов Qt, таких как сигналы, но его также можно использовать для тестирования простого (без Qt) кода на C++.
В данном руководстве я собираюсь объяснить, как использовать Qt Test для тестирования класса на C++. Это потребует создания проекта, определения модульного теста и использования различных макросов, доступных для тестирования кода.
Это первый пост из серии, посвященной Qt Test. Посты этой серии:
- Модульное тестирование кода на C++ с помощью Qt Test. Часть1. Введение
- Модульное тестирование кода на C++ с помощью Qt Test. Часть 2. Расширенное тестирование
- Модульное тестирование GUI (графического интерфейса пользователя) с помощью Qt Test. Часть 1. Введение
- Модульное тестирование GUI (графического интерфейса пользователя) с помощью Qt Test. Часть 2. Расширенное тестирование
Настройка проекта
Идея Qt Test заключается в том, что каждый тестовый случай должен быть независимым исполняемым файлом и иметь собственный проект.
Самый быстрый способ создать проект – использовать шаблон « Проект автотестирования » ( Auto Test Project ), который находится в группе « Другой проект » ( Other Project ) диалогового окна « Новый проект » ( New Project ).

Мастер проведет вас через настройку проекта. В частности, в разделе « Подробнее » ( Details ) можно указать несколько параметров.

« Имя теста » ( Test case name ) будет именем класса, представляющего юнит-тест.
Если вы не хотите использовать мастер проекта, вам нужно добавить testlib в переменную QT в qmake файле проекта:
QT += testlib
Если в вашем модульном тесте нет элементов графического интерфейса, можно отключить модуль gui :
QT -= gui
Написание модульного теста
Чтобы написать модульный тест кода на C++ с Qt, вам необходимо создать класс, который наследуется от QObject и реализует, по крайней мере, один частный слот. Каждый частный слот – это независимый тест.
Самый простой класс модульного теста выглядит примерно так:
#include class TestMinimal : public QObject < Q_OBJECT private slots: void testFoo(); >;
Вы также можете реализовать 4 специальных частных слота, которые используются для операций инициализации и очистки:
// вызывается перед первой тестовой функцией void initTestCase(); // вызывается перед каждой тестовой функцией void init(); // вызывается после каждой тестовой функции void cleanup(); // вызывается после последней тестовой функции void cleanupTestCase();
Кроме того, у вас в тестовом классе могут быть и другие члены данных и функции, поскольку это обычный класс C++.
Пример класса модульного теста
Для этого руководства я написал простой пример класса для тестирования с именем Calculator . Этот класс выполняет основные математические операции с 2 целыми числами. Ничего особенного, в конце концов, это всего лишь пример.
Следует иметь в виду, что обычно вы не будете включать код для тестирования непосредственно в проект модульного тестирования, а будете тестировать некоторую библиотеку или код из другого проекта. Поскольку это пример, то мы можем пока всё упростить.
Класс модульного теста:
#include «Calculator.h» #include class TestCalculator: public QObject < Q_OBJECT private slots: // — настройка/очистка — void init(); // — тесты — void testConstructor(); void testSum(); private: const int A0 = 0; const int B0 = 0; private: Calculator mCalc; >;
Функции класса TestCalculator будут объяснены в следующих разделах.
Проверка значений
Для проверки того, что во время теста всё работает так, как ожидалось, Qt Test предоставляет различные макросы.
Самая простая проверка, которую вы можете выполнить, – это проверить, истинно ли утверждение. Для этого вы можете использовать макрос QVERIFY :
void TestCalculator::testConstructor() < // значения по умолчанию Calculator c1; QVERIFY(c1.getA() == 0); QVERIFY(c1.getB() == 0);
В этом коде всё хорошо, пока функции getA() и getB() возвращают 0. Если это так, при запуске теста вы увидите следующее сообщение:
PASS : TestCalculator::testConstructor()
В случае сбоя сообщение уведомит вас о том, что что-то пошло не так:
FAIL! : TestCalculator::testConstructor() ‘c1.getA() == 0’ returned FALSE. () Loc: [../QtTestIntroduction/TestCalculator.cpp(16)]
Сообщение об ошибке не содержит подробной информации о том, что пошло не так. Оно только говорит вам, какое выражение было ложным.
Если вам нужно добавить к проверке немного контекста, вы можете использовать вторую версию макроса, QVERIFY2 , который позволяет добавить сообщение об ошибке:
// полный конструктор const int A = 10; const int B = 2; Calculator c2(A, B); QVERIFY2(c2.getA() == A, «first operand doesn’t match»); // не совпадает первый операнд QVERIFY2(c2.getB() == B, «second operand doesn’t match»); // не совпадает второй операнд >
В случае сбоя сообщение отладки добавит дополнительную информацию, переданную в макрос:
FAIL! : TestCalculator::testConstructor() ‘c2.getB() == B’ returned FALSE. (second operand doesn’t match) Loc: [../QtTestIntroduction/TestCalculator.cpp(25)]
Добавление сообщения об ошибке может показаться лишней работой, но оно поможет людям, не знакомым с вашим кодом. Вы всегда должны предпочесть использование QVERIFY2 (вместо QVERIFY ), чтобы включать в ваши тесты дополнительную информацию.
Qt Test также предоставляет другие версии QVERIFY , которые предоставляют некоторые дополнительные функции. Например, QTRY_VERIFY_WITH_TIMEOUT или QVERIFY_EXCEPTION_THROWN . Первый вариант позволяет проверять условие несколько раз, прежде чем посчитать его ложным. Последний проверяет, выброшено ли конкретное исключение. Для получения дополнительной информации обратитесь к справочной информации в конце данного руководства.
Сравнение значений
Если вам нужна дополнительная информация, когда тест не проходит, и если вы хотите сравнить какое-либо значение, вам понадобится макрос QCOMPARE :
void TestCalculator::testSum() < // sum default QCOMPARE(mCalc.Sum(), A0 + B0);
Этот макрос будет сравнивать 2 параметра с использованием наиболее подходящего оператора тестирования. Например, для сравнения чисел с плавающей запятой используется функция Qt qFuzzyCompare() .
Когда QCOMPARE выдает сбой, он предоставляет более подробную информацию:
FAIL! : TestCalculator::testSum() Compared values are not the same Actual (mCalc.Sum()): 10 Expected (A0 + B0) : 12 Loc: [../QtTestIntroduction/TestCalculator.cpp(39)]
В этом случае вы также узнаете, каковы возвращаемые и ожидаемые значения. Что во многих случаях очень полезно.
Также QCOMPARE имеет разные версии, предлагающие дополнительные функции, например QTRY_COMPARE_WITH_TIMEOUT , который проверяет условие несколько раз, прежде чем считать его ложным. Для получения дополнительной информации обратитесь к справочной информации в конце статьи.
Функция main приложения
Как упоминалось ранее, каждый юнит-тест должен быть независимым исполняемым файлом. Это означает, что после создания юнит-теста вам понадобится функция main для его запуска.
Для формирования кода функции main , в соответствии с вашими потребностями, Qt Test предоставляет 3 макроса:
// полное приложение Qt QTEST_MAIN(TestName) // приложение Qt только с core: без GUI, но есть обработка событий QTEST_GUILESS_MAIN(TestName) // нет приложения Qt: без GUI и обработки событий QTEST_APPLESS_MAIN(TestName)
Вы можете добавить один из этих макросов в конец файла cpp, определяющего юнит-тест. В этом примере, поскольку я тестировал простой код на C++ (без Qt), я использовал:
QTEST_APPLESS_MAIN(TestCalculator)
Следует помнить, что если вы объявляете класс юнит-теста непосредственно в файле .cpp (а не в файле .h ), вам нужно будет добавить в конце дополнительный #include :
QTEST_APPLESS_MAIN(TestCalculator) #include «TestCalculator.moc»
Это требует Qt для правильной работы.
Исходный код
Полный исходный код этого руководства доступен на GitHub.
Справочная информация
Чтобы узнать больше о Qt Test, вы можете ознакомиться с последней документацией по пространству имен QTest.
Заключение
Qt Test – это простой и легкий в использовании фреймворк для написания модульных тестов на C++. Он не предлагает всех функций других подобных фреймворков, но во многих случаях этого может быть достаточно.
Если ваш проект не использует Qt, вам, вероятно, следует выбрать другие варианты. Если же вы работаете с Qt, то Qt Test может быть лучшим выбором, особенно если вы хотите протестировать код графического интерфейса, что я собираюсь обсудить в следующих постах.
Теги
Сохранить или поделиться
На сайте работает сервис комментирования DISQUS, который позволяет вам оставлять комментарии на множестве сайтов, имея лишь один аккаунт на Disqus.com.
В случае комментирования в качестве гостя (без регистрации на disqus.com) для публикации комментария требуется время на премодерацию.
Источник: radioprog.ru