Перейти к содержимому

Фотография

Coded UI переменные значения парметра

Coded UI MVS MTM автоматизация HELP

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 4

#1 ZezHok

ZezHok

    Новый участник

  • Members
  • Pip
  • 2 сообщений


Отправлено 20 марта 2014 - 10:20

Всем привет!

Совсем недавно начал заниматься автоматизированным тестирование, и очень нужна ваша помощь)

 

Для автоматизации использую Coded UI. Тестирую десктопное приложение. Тест-кейс следующий в приложении открываем запись, смотрим ее ID и значение ID записываем в отдельное поле. С помощью рекордера записал тест, но загвоздка в том что ID всегда разные и в тест всегда нужно передавать его новые значения. Возможно ли реальзовать это с помощью Coded UI?


  • 0

#2 vkazar

vkazar

    Активный участник

  • Members
  • PipPip
  • 128 сообщений
  • ФИО:Виктор
  • Город:Москва

Отправлено 11 августа 2014 - 07:54

Привет!
Если ещё актуально и для архива.

 

Да, это возможно. Билдер, в том числе, генерит класс с постфиксом Params, т.е. если мы записали метод "TypeID", который в поле UIIDEdit  водит нужный ID, то создастся и класс TypeIDParams:

    [GeneratedCode("Coded UITest Builder", "12.0.21005.1")]
    public class TypeIDParams
    {
        
        #region Fields
        /// <summary>
        /// Type 'dsfgsdfgsdfg' in 'ID:' text box
        /// </summary>
        public string UIIDEditText = "dsfgsdfgsdfg";
        #endregion
    }

и, соответственно, в нужном месте ставим строки

UIMap.TypeIDParams.UIIDEditText = "123";
TypeID();

  • 0

Тестировщик должен быть умнее программиста... ну, по крайней мере, хитрее. ©


#3 wret

wret

    Активный участник

  • Members
  • PipPip
  • 124 сообщений
  • Город:Москва

Отправлено 11 августа 2014 - 08:25

 

Привет!
Если ещё актуально и для архива.

 

Да, это возможно. Билдер, в том числе, генерит класс с постфиксом Params, т.е. если мы записали метод "TypeID", который в поле UIIDEdit  водит нужный ID, то создастся и класс TypeIDParams:

    [GeneratedCode("Coded UITest Builder", "12.0.21005.1")]
    public class TypeIDParams
    {
        
        #region Fields
        /// <summary>
        /// Type 'dsfgsdfgsdfg' in 'ID:' text box
        /// </summary>
        public string UIIDEditText = "dsfgsdfgsdfg";
        #endregion
    }

и, соответственно, в нужном месте ставим строки

UIMap.TypeIDParams.UIIDEditText = "123";
TypeID();

Тогда уже

UIMap.UIWindow.UIEdit.Text = "123";

 Проще и без генератора


  • 0

#4 vkazar

vkazar

    Активный участник

  • Members
  • PipPip
  • 128 сообщений
  • ФИО:Виктор
  • Город:Москва

Отправлено 11 августа 2014 - 08:32

 

 

Привет!
Если ещё актуально и для архива.

 

Да, это возможно. Билдер, в том числе, генерит класс с постфиксом Params, т.е. если мы записали метод "TypeID", который в поле UIIDEdit  водит нужный ID, то создастся и класс TypeIDParams:

    [GeneratedCode("Coded UITest Builder", "12.0.21005.1")]
    public class TypeIDParams
    {
        
        #region Fields
        /// <summary>
        /// Type 'dsfgsdfgsdfg' in 'ID:' text box
        /// </summary>
        public string UIIDEditText = "dsfgsdfgsdfg";
        #endregion
    }

и, соответственно, в нужном месте ставим строки

UIMap.TypeIDParams.UIIDEditText = "123";
TypeID();

Тогда уже

UIMap.UIWindow.UIEdit.Text = "123";

 Проще и без генератора

 

это был простейший пример. Бывает необходимость в предварительных действиях. Конечно, их можно вынести, опять же, в отдельные методы, но это куча одинакового кода... Ну и тем более, методы отображают конкретные действия пользователя и отход от такой практики не совсем корректен с точки зрения наглядности.

Ну и опять же, вопрос был именно про переменные значения параметра ;)


  • 0

Тестировщик должен быть умнее программиста... ну, по крайней мере, хитрее. ©


#5 wret

wret

    Активный участник

  • Members
  • PipPip
  • 124 сообщений
  • Город:Москва

Отправлено 11 августа 2014 - 09:05

это был простейший пример. Бывает необходимость в предварительных действиях. Конечно, их можно вынести, опять же, в отдельные методы, но это куча одинакового кода... Ну и тем более, методы отображают конкретные действия пользователя и отход от такой практики не совсем корректен с точки зрения наглядности.

 

 

Ну и опять же, вопрос был именно про переменные значения параметра ;)

 

Ваш ответ имеет место быть

В вашем варианте косвенно понятно что TypeIDParams это параметры для TypeID(), и не до конца понятно будет ли использоваться UIIDEditText в TypeID()

UIMap.TypeIDParams.UIIDEditText = "123";
TypeID();

Мой вариант не куча одинакового кода, а более программистский подход)


string uIIDEditText = "123";
//...

void Init()
{
//...
TypeID(uIIDEditText);
}

void TypeID(string uIIDEditText)
{
//...
UIMap.UIWindow.UIEdit.Text = uIIDEditText;
/...
}

  • 0



Темы с аналогичным тегами Coded UI, MVS, MTM, автоматизация, HELP

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных