Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Подготовка к выполнению лабораторной работы






Лабораторная работа № 5

 

«Обычный тест»

Общие сведения об обычных тестах

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

· Выполняются из командной строки.

· Возвращают значение " Пройден" или " Ошибка".

· (Необязательно) Возвращают подробные сведения для " внутренних", то есть содержащих их тестов.

Visual Studio обрабатывает обычные тесты так же, как и остальные: ими можно управлять и выполнять их, используя те же окна Team System (средства тестирования), можно получать и распечатывать результаты их выполнения.

Подготовка к выполнению лабораторной работы

1. Создайте проект для нового консольного приложения Visual C#. В поле Имя диалогового окна Создание проекта введите EvenOdd, а затем нажмите кнопку ОК.

В обозревателе решений откроется решение EvenOdd. Оно содержит проект EvenOdd.

2. В проекте EvenOdd откройте файл исходного кода Program.cs.

3. Замените код в файле Program.cs кодом, приведенным ниже

4. Постройте решение.

При этом будет создана программа-оболочка для генерирования обычного теста.

Пример " EvenOdd" — это проект, из которого можно построить простую программу. Затем эту программу можно включить в обычный тест. Файлы данного примера предоставлены для пошагового руководства

 

using System;

using System.Globalization;

using System.IO;

 

namespace EvenOdd

{

class TestSecondsOrNumbersOrFiles

{

/* Purpose: Wrap this sample app to create a generic test that passes or fails. Use it in

conjunction with the walkthrough topic that covers creating and running a generic test

in the testing tools section of the Visual Studio Team System documentation.

When you run the EvenOdd app, it exhibits the following Pass/Fail behavior:

* Pass zero arguments: EvenOdd randomly returns 1 (Fail) or 0 (Pass).

* Pass one (integer) argument: EvenOdd returns 1 if the argument is odd, 0 if even.

* Pass two arguments: EvenOdd ignores the first argument and uses only the second one, a string.

If the file named by that string has been deployed, EvenOdd returns 0 (Pass); otherwise 1 (Fail).

*/

[STAThread]

public static int Main(string[] args)

{

// If no argument was supplied, test whether the value of Second is even.

if (args.Length == 0)

return TestNumber(DateTime.Now.Second);

 

// If only a single numeric (integer) argument was supplied,

// test whether the argument is even.

if (args.Length == 1)

{

try

{

int num = Int32.Parse(args[0], CultureInfo.InvariantCulture);

return TestNumber(num);

}

// catch non-integer argument for args[0]

catch (FormatException)

{

Console.WriteLine(" Please type an integer.");

return 1;

}

// catch too-large integer argument for args[0]

catch (OverflowException)

{

Console.WriteLine(" Type an integer whose value is between {0} and {1}.", int.MinValue, int.MaxValue);

return 1;

}

 

}

// If two arguments are supplied, the test passes if the second

// argument is the name of a file that has been deployed.

if (args.Length == 2)

{

if (File.Exists(args[1]))

return 0;

}

// Test fails for all other cases

return 1;

}

 

public static int TestNumber(int arg)

{

return arg % 2;

}

}

}

 

Пример EvenOdd представляет собой консольное приложение Visual C#. В зависимости от переданного аргумента оно возвращает значение 1 или 0.

· Если аргумент не передается и значение в поле секунд текущего системного времени является четным, программа возвращает 0. Если аргумент не передается и значение в поле секунд является нечетным, программа возвращает 1.

· При передаче одного числового аргумента программа возвращает 0, если переданное число является четным. Если это число является нечетным, программа возвращает 1. При передаче нечислового аргумента программа возвращает 1. При этом обычный тест, включающий эту программу, возвращает результат " Ошибка".

· При передаче двух аргументов программа возвращает 0, если второй аргумент представляет файл, существующий в том же каталоге, в котором находится программа; в противном случае программа возвращает 1.

· Все прочие случаи приводят к результату неудачи.

 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.007 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал