Что я должен передать для параметра владельца в диалоге из модульного теста? - PullRequest
1 голос
/ 02 мая 2011

Я использую встроенное модульное тестирование в Visual Studio 2010. Приведенный ниже код показывает базовую структуру моего модульного теста.

public void StartEditorTest()
{
    IWin32Window owner = null;
    var openDialog = new OpenFileDialog();

    openDialog.Title = "Select file";

    if (openDialog.ShowDialog(owner) == DialogResult.OK)
    {
        bool expected = false; // TODO: Initialize to an appropriate value
        bool actual;

        var myEditorForm = new MyEditorForm();

        // StartEditor does some initialization, calls ShowDialog(owner)
        // and returns a boolean
        actual = myEditorForm.StartEditor(owner, openDialog.FileName);
        Assert.AreEqual(expected, actual);
    }
}

Проблема, с которой я сталкиваюсь, заключается в том, что openDialog нене всегда отображается как переднее окно.Он открывается правильно, но вложен где-то в z-порядке Windows, и мне нужно Alt-Tab, чтобы найти его.

Я бы хотел указать Visual Studio IDE в качестве владельца, но я неуверен, как это сделать, или даже если это правильно.Я просто хочу, чтобы любой диалог, запущенный из моих модульных тестов, отображался на переднем плане.

1 Ответ

1 голос
/ 02 мая 2011

Существуют фреймворки для пользовательского интерфейса, которые лучше подходят для этого. Попробуйте поискать в Google для .net автоматизированного тестирования пользовательского интерфейса

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