TestComplete. Как сделать, чтоб переменная была доступна во всех Keywo
#1
Отправлено 15 декабря 2010 - 08:44
Пытаюсь записать значение в переменную проекта, но после окончания скрипта переменная пустая.
Как сделать, чтоб значение сохранялось(в KeywordTests)
#2
Отправлено 15 декабря 2010 - 10:49
Добрый день!
Пытаюсь записать значение в переменную проекта, но после окончания скрипта переменная пустая.
Как сделать, чтоб значение сохранялось(в KeywordTests)
Сделать модуль, там определить переменную, подключать модуль к нужному скрипту
Второй вариант - использовать ODT
#3
Отправлено 16 декабря 2010 - 14:49
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium
#4
Отправлено 17 декабря 2010 - 09:40
Добрый день!
Пытаюсь записать значение в переменную проекта, но после окончания скрипта переменная пустая.
Как сделать, чтоб значение сохранялось(в KeywordTests)
Сделать модуль, там определить переменную, подключать модуль к нужному скрипту
Второй вариант - использовать ODT
А как потом модуль подключить или использовать ODT в KeywordTests, а не в обычном скрипте?
Я нашла, как можно сделать без модуля и без ODT(не знаю, сработает ли): надо использовать Return и после окончания даного KeywordTests, возвратится значение в скрипт, откуда вызвался KeywordTests
Просто у меня уже есть KeywordTests готовый, который работает и переписывать его бы не хотелось на обычный скрипт, тем более, что мне сказали, что так работает быстрее.
У меня еще вопрос, как в KeywordTests написать строку например ExcelApp.Quit();, где var ExcelApp = Sys.OleObject("Excel.Application");
Как объявить переменную, я знаю, а как потом написать какую-то команду, используя эту переменную, я не имею представления
#5
Отправлено 21 декабря 2010 - 08:37
В TestComplete есть два типа переменных: Permanent и Temporary. Если Permanent переменные сохраняют значение (только простого типа) между запусками проекта, то Temporary - только во время текущего запуска теста. Вероятно, Вы либо используете Temporary переменную, либо пытаетесь сохранить значение сложного типа (объект, например).Я нашла, как можно сделать без модуля и без ODT(не знаю, сработает ли): надо использовать Return и после окончания даного KeywordTests, возвратится значение в скрипт, откуда вызвался KeywordTests
Вам нужно воспользоваться операцией 'Run Code Snippet'.У меня еще вопрос, как в KeywordTests написать строку например ExcelApp.Quit();, где var ExcelApp = Sys.OleObject("Excel.Application");
Как объявить переменную, я знаю, а как потом написать какую-то команду, используя эту переменную, я не имею представления
Дмитрий
#6
Отправлено 23 декабря 2010 - 09:45
Здравствуйте.
В TestComplete есть два типа переменных: Permanent и Temporary. Если Permanent переменные сохраняют значение (только простого типа) между запусками проекта, то Temporary - только во время текущего запуска теста. Вероятно, Вы либо используете Temporary переменную, либо пытаетесь сохранить значение сложного типа (объект, например).Я нашла, как можно сделать без модуля и без ODT(не знаю, сработает ли): надо использовать Return и после окончания даного KeywordTests, возвратится значение в скрипт, откуда вызвался KeywordTests
Вам нужно воспользоваться операцией 'Run Code Snippet'.У меня еще вопрос, как в KeywordTests написать строку например ExcelApp.Quit();, где var ExcelApp = Sys.OleObject("Excel.Application");
Как объявить переменную, я знаю, а как потом написать какую-то команду, используя эту переменную, я не имею представления
А где увидеть, какой тип переменной. Я пытаюсь сохранить переменную типа Table. После выполнения скрипта(KeywordTests), если перейти на закладку Variables, то в переменной нет значений,как и не было до выполнения скрипта. Отсюда я делаю вывод, что значения не сохраняются
#7
Отправлено 23 декабря 2010 - 10:40
Переменные типа table как и object доступны только в temporary variables.А где увидеть, какой тип переменной. Я пытаюсь сохранить переменную типа Table. После выполнения скрипта(KeywordTests), если перейти на закладку Variables, то в переменной нет значений,как и не было до выполнения скрипта. Отсюда я делаю вывод, что значения не сохраняются
Если это проектная переменная - то она будет хранить значение только во время запуска проекта (но в это время должна быть доступна для всех скриптов данного проекта).
Если вам нужно чтобы она была доступна из скриптов разных поректов - создайте сьютную переменную, она будет хранить значение в течение запуска всего project suite.
Ну а если нужно нужно хранить между запусками всего project suite - экспортируйте ее куда нибуть, например в csv файлик или эксель.
#8
Отправлено 24 декабря 2010 - 08:27
Переменные создаются на закладке Variables редакторов проекта, сьюиты, keyword тестов и т.д. На этой закладке есть две таблицы: Temporary и Persistent.А где увидеть, какой тип переменной.
Дмитрий
#9
Отправлено 13 января 2011 - 12:30
Сделать модуль, там определить переменную, подключать модуль к нужному скрипту
Второй вариант - использовать ODT
А как подключить модуль в KeywordTests?
Я попыталась подключить с помощью Set Variable Value, присваивая переменной Input["",""] типа Table(т.к. функция возвращает двумерный массив) значение типа "Code Expression" = Runner["CallMethod"]("VP_create_for.GetDataFromExcel", "C:/work/ic_vp/trunk/06.Test/TestCase/Test_Search/TVP-27_Search_VP_for_extract.xlsx", "Avto3", 20)
после запуска теста при присваивании значения переменной выдается ошибка "No column with the name "" was found"
Вроде понятно, надо указать номер колонки., но я же не могу 20 колонок(в Excel-евском файле 20 колонок) в одну записать
#10
Отправлено 03 февраля 2011 - 07:35
Судя по всему, ошибку выдаёт код функции VP_create_for.GetDataFromExcel, которого мы здесь, увы, не знаем.
Дмитрий
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных