小编Ben*_*wer的帖子

在MVC控制器构造函数中获取主机名

是否可以从控制器构造函数中获取当前主机名?

Request和HttpContext对象都是null,因此Request.Url不产生任何结果.

public class HomeController : Controller
{
    private readonly MyEntities _entities;

    public HomeController()
    {
        //
        var hostname = Request.Url;
        if (hostname.Contains("localhost")) EFConnectionStringName="localhost";
        else EFConnectionStringName="default";
        _entities = new MyEntities(EFConnectionStringName);
    }
...
Run Code Online (Sandbox Code Playgroud)

我在这里要解决的更大问题是根据主机名为Entity Framework选择连接字符串.想法?

asp.net-mvc entity-framework

13
推荐指数
2
解决办法
3万
查看次数

Cypress - cy.wait() 超时等待 5000 毫秒以等待对路由的第一个请求

Cypress 的新手,到目前为止一直很顺利,直到我想伪造一个网络请求。代码是这样的:

describe('Some test', function(){
it('Can fake out an XHR response', function(){
    cy.server()
    cy.route('https://reqres.in/api/users', [{ id: 1, name: 'Pat' }]).as('getMessages')
    cy.request('https://reqres.in/api/users')
    cy.wait(['@getMessages'])
Run Code Online (Sandbox Code Playgroud)

...

无论我尝试什么,我都会得到:

CypressError:重试超时:cy.wait() 等待 5000 毫秒超时,等待对路由的第一个请求:'getMessages'。从未发生过请求。

我在这里做错了什么?

编辑:我将代码更改为:

cy.server()
cy.route('https://reqres.in/api/users', [{ id: 1, name: 'Pat' }]).as('getMessages')
cy.request('https://reqres.in/api/users')
cy.wait(['@getMessages'])
Run Code Online (Sandbox Code Playgroud)

但结果如下:

cypress

7
推荐指数
1
解决办法
8576
查看次数

通过API从TFS检索数据驱动测试的结果

我有一些数据驱动的单元测试,基本完成如下所述:

http://msdn.microsoft.com/en-us/library/ms182527.aspx

对于给定的测试运行,我可以得到如下结果:

IOrderedEnumerable<ITestCaseResult> runDetails = WebApiApplication.TeamProject.TestRuns.Find(testRunId).QueryResults().OrderBy(r=>r.Outcome);
Run Code Online (Sandbox Code Playgroud)

在每个ITestCaseResult中,我可以通过以下方式获取错误消息:

testCaseResult.ErrorMessage
Run Code Online (Sandbox Code Playgroud)

太棒了,但是当有数据驱动测试的结果时,我无法弄清楚如何获得迭代结果.它们出现在生成的.trx文件中,但不在ITestCaseResult中的任何位置.

在此输入图像描述

有关如何通过API获取它们的任何想法?

tfs data-driven-tests

5
推荐指数
1
解决办法
548
查看次数

从Powershell中的ForEach中返回一个值

这看起来很基本,但我看不出它是如何或为什么这样表现的:

function ReturnStuff{
    $a=1,2,3,4,5
    $a.ForEach{
        return $_
    }
}

ReturnStuff
Run Code Online (Sandbox Code Playgroud)

为什么这会给我:1 2 3 4 5而不是1?

powershell foreach loops

5
推荐指数
1
解决办法
5640
查看次数

Powershell - 使用参数启动Windows服务

我需要通过Powershell以'1'作为参数启动Windows服务,如下所示:

在此输入图像描述

所以基本上我想用powershell做这样的事情:

Start-Service _MyService 1 <- won't work
Run Code Online (Sandbox Code Playgroud)

谷歌搜索没有引起任何关注,也许我正在寻找错误的东西,但我不敢相信这是不可能的.有线索吗?

powershell windows-services

3
推荐指数
1
解决办法
4472
查看次数

从单元测试项目启动并调用 WPF 应用程序上的方法

我想启动一个 WPF 应用程序并调用 ViewModel 上的方法来控制该应用程序以进行集成测试。就像是:

    [Test]
    public void Test1()
        var application = new MyApp();
        application.InitializeComponent();
        application.Run();
Run Code Online (Sandbox Code Playgroud)

(好的,这会在此时停止测试执行,大概会将控制权传递给 WPF 应用程序。不知道如何处理这个问题。在单独的线程或其他线程中启动?)

然后我希望能够在 ViewModel 上获取和设置值,如下所示:

        application.MyViewModel.SomeProperty = "A value!";
Run Code Online (Sandbox Code Playgroud)

这里的目标是在集成意义上测试 WPF 应用程序,而不是求助于 WinAppDriver、White、CodedUI 或类似的任何混乱的东西。有想法吗?

c# wpf multithreading integration-testing

3
推荐指数
1
解决办法
1938
查看次数