Программирование arrow Разработка и тестирование arrow Использование пользовательских расширений для рабочих элементов TFS

Использование пользовательских расширений для рабочих элементов TFS

Оглавление

Стандартный набор элементов пользовательского интерфейса и его возможности не всегда удовлетворяют взыскательных пользователей любой системы. И MS Visual Studio Team Foundation Server (TFS), в этом смысле, не является исключением. Однако в TFS предусмотрена возможность создания пользовательских элементов для расширения стандартных свойств рабочих элементов системы. Использование технологий .NET позволяет просто создавать пользовательские расширения и интегрировать их в свою форму управления рабочим элементом. В данной статье описывается возможность создания дополнительных пользовательских элементов графического интерфейса на простом примере реализации связанных списков и сравнение со стандартной возможностью организации связанных списков.

Стандартные списки

Для формирования связанных списков нам помогут встроенные глобальные списки (элемент GLOBALLIST). Глобальные списки очень удобны при работе с часто меняющимися списками и большими списками и одни и те же списки могут использоваться в различных рабочих элементах. Для нашего примера мы создадим несколько глобальных списков (см. Рисунок 1):

  • Список «Operating systems» представляет собой набор типов операционных систем, который будет главным списком;
  • Списки «OS Microsoft Windows», «OS Linux» и т.д. представляют собой список версий для каждого из типа операционной системы.
    Использование пользовательских расширений для рабочих элементов TFS - Разработка и тестирование - Программирование - Программирование, исходники, операционные системы 

Рисунок 1. Глобальные списки

Далее необходимо создать два текстовых поля, которые буду хранить в себе информацию о выбранных полях:

  • Поле «OS Type» будет содержать информацию о типе операционной системы;
  • Поле «OS Version» будет содержать информацию о версии операционной системы.
Использование пользовательских расширений для рабочих элементов TFS - Разработка и тестирование - Программирование - Программирование, исходники, операционные системы 

 Рисунок 2. Новые поля

 Теперь необходимо для каждого поля определить список. Особенность в нашем случае заключается в том, что для поля «OS Type» должен быть статический список, а для поля «OS Version» необходимо определить динамический список, которые будет менять свой набор значений в зависимости от значения, которое выбрано в поле «OS Type». Для того чтоб подключить список к полю «OS Type», для него необходимо указать правило «ALLOWEDVALUES» и в нем установить ссылку на глобальный список «Operating systems» как изображено на рисунке ниже (см. Рисунок 3).

Использование пользовательских расширений для рабочих элементов TFS - Разработка и тестирование - Программирование - Программирование, исходники, операционные системы 

Рисунок 3. Подключение списка к полю

 Для поля «OS Version» необходимо определить условия, по которым будет изменяться содержимое его списка. Для этого необходимо для поля определить правило «WHEN», которое выполнится при истинности прописанного в нем выражения. Правило «WHEN» может отслеживать изменения значения любого поля, которое принадлежит рабочему элементу. Как условие определим соответствие значения ссылки «CMC.Bug.OSType», которая определяет поле «OS Type», каждому значению из глобального списка «Operating systems» (см. Рисунок 4).

Использование пользовательских расширений для рабочих элементов TFS - Разработка и тестирование - Программирование - Программирование, исходники, операционные системы  

Рисунок 4. Определение условия для поля

 Результатом выполнения правила должно быть установка в значение «ALLOWEDVALUES» наименования необходимого глобального списка (одного из «OS Microsoft Windows», «OS Linux» и т.д.)

Использование пользовательских расширений для рабочих элементов TFS - Разработка и тестирование - Программирование - Программирование, исходники, операционные системы

Рисунок 5. Подключение списка к условию

И на последнем шаге необходимо новые поля разместить на форме рабочего элемента, которые должны иметь встроенный тип стандартного элемента пользовательского интерфейса «FieldControl» (см. Рисунок 6).

Использование пользовательских расширений для рабочих элементов TFS - Разработка и тестирование - Программирование - Программирование, исходники, операционные системы 

Рисунок 6. Определение полей на форме

Результатом проведенных изменений на форме должны быть два списковых поля с зависимыми значениями (см. Рисунок 7).

Использование пользовательских расширений для рабочих элементов TFS - Разработка и тестирование - Программирование - Программирование, исходники, операционные системы 

Рисунок 7. Новые поля на форме рабочего элемента

В примере используется статичный набор данных для каждого списка. Если же планируется использование динамических данных для глобальных списков, допустим, с внешних источников, можно написать внешнее приложение, которое будет получать информацию и обновлять ее с помощью утилиты импорта глобального списка из командной строки glimport.


 
« Предыдущая статья   Следующая статья »


  • Разработка и тестирование, Team Build в Team Foundation Server (TFS)
    В данной статье речь идет об использовании Team Build для автоматизации процесса сборки. Здесь рассматривается ряд общих проблем, связанных со сборкой, и сравниваются различные подходы к сборкам, от плановой ежедневной сборки до сборки в результате непрерывной интеграции....
  • Разработка и тестирование, Управление зависимостями системы контроля версий в Visual Studio Team System
    В данной статье рассматривается, как следует обрабатывать зависимости внутри и между решениями Visual Studio. Единый подход к управлению зависимостями в среде коллективной разработки необходим для обеспечения стабильности процесса сборки и сокращения текущих затрат на обслуживание системы контроля версий. Зависимости – это другие проекты, внешние сборки, Веб-сервисы и базы данных. Зависимости неизбежно меняются во времени и, в результате, оказывают влияние на процесс и порядок сборки прило...
  • Разработка и тестирование, Выбор стратегии ветвления и слияния в Team Foundation Server (TFS)
    Данная статья описывает стратегии ветвления и слияния для ряда типовых сценариев. Обычно ветви используются для поддержания версий, готовых к выпуску, или параллельной разработки. Во многих простых сценариях в ветвлении нет необходимости, достаточно применять простой подход использования меток для маркировки сборок. Например, с помощью меток можно в любой момент времени восстановить сборку на любом этапе или выявить, какие версии исходного файла использовались для создания конкретной сборки. Рас...
  • Разработка и тестирование, Сравнение RUP и других методологий разработки ПО
    Как сравнивать две методологии? Казалось бы, очень простой вопрос. По работам и задачам, на которые разбивается разработка ПО. По стадиям разработки, в которые эти работы группируются, и по тому, что входит в каждую стадию. По разрабатываемым документам и моделям. ...
  • Разработка и тестирование, Переход от каскадной разработки к итеративной
    Модель совершенной методологии итеративной разработки во многом радикально отличается от совершенной модели каскадной разработки. Но на практике ни одна группа разработчиков не применяет эти подходы строго в соответствии с их моделями. В этой статье объясняется, почему группам может потребоваться плавный переход от каскадного к итеративному подходу; также указаны некоторые полезные шаги в этом направлении. Объясняются основны...
  • Разработка и тестирование, Средства функционального моделирования: CA ERwin Process Modeler, Design/IDEF, ARIS, ORACLE Designer
    Как корректно выбрать и без неоправданных рисков приобрести средства функционального моделирования систем: CA ERwin Process Modeler, Design/IDEF, ARIS, ORACLE Designer....
  • Разработка и тестирование, CA ERwin Process Modeler: функциональное моделирование
    Грамотное и эффективное функциональное моделирование может быть осуществлено только при соблюдении основополагающих положений, отражающих принципы построения окружающей нас материально - информационной среды....
  • Разработка и тестирование, Отладка при помощи средств визуализации отладчика (Debugger Visualizers) Visual Studio 2005
    При отладке проекта в Visual Studio .NET 2002/2003, вы можете увидеть значение текущих переменных путем ввода переменной в окно Watch, либо путем наведения мыши на переменную в окне с кодом. Хотя данный подход прекрасно работал с переменными простого типа либо с обычными значениями, данный пользовательский интерфейс был не настолько идеален для более сложных типов и длинных значений. К примеру, если бы вы работали над приложением, которое управляло бы содержимым XML-файла, то вы наверняка захоте...