2015-02-26 3 views
1

Я пытаюсь создать экземпляр UIMAp (причина, по которой мне это нужно, в то же время я имею ошибку, которая возникает, и я думаю, что это связано с тем, что мне нужно ее создать). Я читал онлайн о том, как это сделать, но мои карты пользовательского интерфейса называются такими же, как и мои файлы cs, которые были созданы. И я не могу видеть, действительно ли я создаю его корректно, так как это просто класс. ссылка в файле , которыйКак создать экземпляр UIMap в файле класса, который я создал

using Microsoft.VisualStudio.TestTools.UITest.Common.UIMap;

Но я не думаю, что я имею доступ к нему, или я и просто не знаю
Я попробовал этот код HomePage MyNewUIMap = new HomePage();

, но я не верю, что его правильно здесь моя структура папок

Например моя папка и файл структура

-> Home (папка)
----> HomePage. uiTest (UIfile)
-------> HomePage.cs (файл)
-----------> HomePage.Designer.cs (файл)

ответ

3

Я обычно держать класс полезности, который ничего не делает, кроме создания экземпляров моих карт , Затем я могу просто позвонить MyUtility.HomePage.objectOnHomePage, когда мне нужно взаимодействовать с этим объектом, и мне не нужно создавать экземпляры каждой карты для каждого тестового класса. Однако фактический метод инстанцирования моих карт делаются ниже:

public HomePage myHomePageMap 
{ 
    get 
    { 
     if (_homePage == null) 
      _homePage = new HomePage(); 
     return _homePage; 
    } 
} 
private HomePage _homePage; 

я сделать это таким образом, чтобы убедиться, что, если я уже инстанцирован карта, я не создать дубликат экземпляра.

+0

Привет, Райан, Спасибо, что ответили. Я все еще не могу получить доступ к каким-либо методам карты UI, поэтому я не думаю, что создаю правильный объект. Когда я создаю экземпляр в MSDN, он утверждает, что я должен видеть все эти методы, такие как AddUIobjects и clear и Contain и т. Д. ... [link] (https://msdn.microsoft.com/en-us/library/microsoft .visualstudio.testtools.uitest.common.uimap.uimap.aspx? f = 255 & MSPPError = -2147217396) – skinnyWill

+0

Проблема в том, что оба частичных класса и имена файлов одинаковы. Единственное, что позволяет мне получить доступ к частичным классам, которые имеют мои методы и свойства, - это частичный класс с тем же именем, что и UCmap partial class, я не могу получить доступ, я не знаю почему ?. – skinnyWill

+0

Раздел «Примечания» на странице, на которую вы ссылались, отвечает на ваш вопрос. Вы не должны использовать методы самого класса в своих тестах, только те методы, которые создатель теста добавляет к файлу map.designer.cs или к тем, которые вы добавляете вручную в файл map.cs. Например, метод .AddUIObjects() будет использоваться TestBuilder для построения вашей карты, но если вы добавите метод 'ClickOnThisObject()' в ваш неполный класс, вы можете сделать 'MyUtility.HomePage.ClickOnThisObject();'. Кроме того, при попытке доступа к объектам и методам из файла .designer.cs вы просто перемещаетесь по структуре классов. –

Смежные вопросы