Тестирование приводных модулей Nancy

Хорошо - я люблю NancyFx. Написание веб- приложения с этими несколькими строками просто удивительно!

Но как вы тестируете привод модулей NancyModules на уровне блока?

Обратите внимание, что я знаю отличную тестовую рамку , поставляемую с Nancy (Nancy.Testing on NuGet), которая дает отличные способы тестирования всего (почти) стека приложений. Но теперь я имею в виду тест уровня unit , который я использую для заполнения содержимого моего NancyModule, по типу TDD.

Поскольку маршруты определены в конструкторе, часто вместе с выражением lamda, составляющим все действие, он чувствует себя немного «недостижимым» из единичного теста. Но пропустил ли я что-то очевидное о том, как тестировать действия маршрута?

Например, как бы выглядел единичный тест для этого простого приложения?

public class ResouceModule : NancyModule 
{
   private IProductRepository _productRepo;

   public ResourceModule(IProductRepository repo) : base("/products") 
   {
        Get["/list"] = parameters => { 
           return View["productList.cshtml", repo.GetAllProducts()];
        };
   }
}

Смотрите там - теперь я написал производственный код перед тестом...:) Есть предложения по началу теста?

-121--1123729-

Оптимизация скорости: частные и общедоступные переменные - Java Я задаю этот вопрос исключительно для аспектов скорости вопроса. Какова разница в скорости между получением значения из объекта, когда он является частным или общедоступным (Java)? класс MyClass {...

Я задаю этот вопрос исключительно для оперативных аспектов вопроса.

Какова разница в скорости между получением значения от объекта, когда он является частным или общедоступным (Java)?

class MyClass {
    public int myInt = 5;
}
class MyOtherClass {
    private int myInt = 5;

    public int getMyInt() {
        return myInt;
    }
}
class MyMainClass {
    public static void main (String [] args) {
        MyClass myObject = new MyClass();
        MyOtherClass myOtherObject = new MyOtherClass();

        // which is faster?
        System.out.println(myObject.myInt);
        System.out.println(myOtherObject.getMyInt ());
    }
}

Я знаю, что могу проверить его, но если кто-то уже знает это, это не может повредить:) Заранее спасибо!

5
задан Hidde 9 September 2011 в 17:34
поделиться