Модульный тест для метода CreateDatabaseConnection - PullRequest
1 голос
/ 06 апреля 2011

Использование: Microsoft Unit Testing Framework, интегрированный с VS2010

У меня есть класс, который реализует этот интерфейс.

public interface IConnectionManager
{
    IDbConnection OpenDatabase(string path);
    void CloseDatabase();
}

Я хотел бы создать набор тестов для этих методов, но несовершенно уверен, как действовать.

Каков наилучший способ проверить это?

Спасибо.

РЕДАКТИРОВАТЬ:

Моя реализация OpenDatabase выглядит кое-чтокак это:

    public OleDbConnection OpenDatabase (string p_path)
    {
        if (Library.StringOperations.IsNullOrEmpty (p_path))
            return null;

        bool error = false;
        string  connectionString= @"CONNECTION STRING HERE";
        try
        {
            OleDbConnection con= new OleDbConnection (connectionString);
            con.Open ();
        }
        catch (Exception)
        {
            error = true;
        }

        if (!error)
            return con;

        return null;
    }

По предложению @rdkleine я хочу проверить возвращаемое соединение.

Несколько вопросов:

  1. Нужно ли мнесоздать новый объект OleDbConnection для сравнения с моим возвращенным объектом или я должен проверить свойства возвращенного объекта подключения?

  2. Можно ли в этом случае использовать Mock Objects?

  3. Имея в виду, что я тестирую соединение с БД, это все еще Модульное тестирование или Интеграционное тестирование ?

Еще раз спасибо.

1 Ответ

4 голосов
/ 06 апреля 2011

Начните просто.

  • Проверка возврата соединения
  • Тестовый путь существует
  • Тестовый путь не существует
  • Тест не может подключиться
  • Тест можно подключить

и т.д.

Прочтите эту книгу о TDD:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...