小编hol*_*see的帖子

分布式计算框架(.NET) - 专门用于CPU密集型操作

我目前正在研究开发分布式应用程序的可用选项(包括开源和商业).

"分布式系统由多台通过计算机网络进行通信的自主计算机组成." 维基百科

该应用程序专注于分发高CPU密集型操作(而不是数据密集型),因此我确信MapReduce解决方案不符合要求.

您可以推荐的任何框架(+给出任何经验的简要概述或与其他框架的比较)将不胜感激.

.net distributed frameworks distributed-computing grid-computing

21
推荐指数
1
解决办法
1万
查看次数

11
推荐指数
2
解决办法
3209
查看次数

当SUT利用Task Parallel Libaray时,使用Mocks进行单元测试

我正在尝试通过被测系统(SUT)对依赖性调用方法进行单元测试/验证.

  • 依赖性是IFoo.
  • 依赖类是IBar.
  • IBar实现为Bar.
  • 当在Bar实例上调用Start()时,Bar将在新的(System.Threading.Tasks.)任务中调用IFoo上的Start().

单元测试(Moq):

    [Test]
    public void StartBar_ShouldCallStartOnAllFoo_WhenFoosExist()
    {
        //ARRANGE

        //Create a foo, and setup expectation
        var mockFoo0 = new Mock<IFoo>();
        mockFoo0.Setup(foo => foo.Start());

        var mockFoo1 = new Mock<IFoo>();
        mockFoo1.Setup(foo => foo.Start());


        //Add mockobjects to a collection
        var foos = new List<IFoo>
                       {
                           mockFoo0.Object,
                           mockFoo1.Object
                       };

        IBar sutBar = new Bar(foos);

        //ACT
        sutBar.Start(); //Should call mockFoo.Start()

        //ASSERT
        mockFoo0.VerifyAll();
        mockFoo1.VerifyAll();
    }
Run Code Online (Sandbox Code Playgroud)

IBar作为酒吧的实施:

    class Bar : IBar
    {
        private IEnumerable<IFoo> Foos { get; set; }

        public Bar(IEnumerable<IFoo> foos)
        {
            Foos …
Run Code Online (Sandbox Code Playgroud)

.net c# unit-testing moq .net-4.0

9
推荐指数
1
解决办法
3270
查看次数

模拟Enterprise Lib 5'数据库'

是否可以模拟企业库5版的"数据库"?如果是这样......怎么样?

没有IDatabase接口(这是一个谜,因为我虽然微软P&P会更多关于暴露这种接口的可测试性优势).

我有一个使用EntLib 5数据访问应用程序块的Repository类.

我将单元测试改编成这个类,需要模拟出对Database对象的依赖.此类现在通过其构造函数传递给数据库,并使用Database对象在Db上执行操作.

我使用以下内容来解析要传递给我的存储库的数据库实例:

Container.RegisterType<IFooRepository, FooRepository>(
    new InjectionConstructor(
        EnterpriseLibraryContainer.Current.GetInstance<Database>("FooDbConnStr")
    )
);
Run Code Online (Sandbox Code Playgroud)

我不希望这些单元测试成为集成测试.

我已经尝试使用Moq来创建数据库类型的动态模拟,但事实证明这很棘手,因为数据库需要在其构造函数中使用连接字符串和DbProviderFactory.也许如果有像MockDbProviderFactory这样的东西.

这是单元测试采用的形式:

EntLib UnitTest尝试模拟数据库

旁白:我还发现使用静态记录器类很难测试.希望我在这里缺少一些技巧,但我必须说到目前为止我对可测试性感到失望.

.net c# unit-testing enterprise-library

6
推荐指数
1
解决办法
2304
查看次数

如何在SiteMinder后面调用WCF Http Service

我试图调用在ASP.NET应用程序中托管的WCF 4 Http Web服务.该服务受SiteMinder保护.

我想知道如何以编程方式调用Web服务,更具体地说,我需要传递哪些信息才能在SiteMinder中获得授权以访问我的资源.

我从同一台服务器上运行的ASP.NET应用程序发出请求,因此我可以访问身份验证cookie.

asp.net cookies web-services siteminder

4
推荐指数
1
解决办法
4832
查看次数