Closed SolovevaIV closed 5 years ago
Добрый день!
Проблема на сколько я понял следующая: Вы пытаетесь получить представление данных табличной части.
Причины Непонятное ограничение от API от 1С. В документации сказано: Если метод вызывается для поля, являющегося колонкой таблицы, которая не находится в режиме редактирования, будет сгенерирована ошибка.
Решаемая задача Напишите подробнее решаемую задачу, думаю что сможем дать более верный совет по созданию теста.
Обходные пути
Добрый день!
Необходимо получить значение выбранной ячейки. Ваш способ, к сожалению, применить не получилось, так как при каждом запуске приложения настройки не сохраняются. Пробовали создать сценарий, по которому будем изменять поле таблицы на поле формы, к сожалению, в Менеджере сценарного тестирования нет команды перемещения (Drap&Drop), и сами элементы дерева он распознать не может.
Может быть есть методы, с помощью которых можно получить данное значение
Замечания
Предложения
Попробуйте следующий вариант. а) позиционируетесь на строке, затем на поле б) далее через еще открываете форму расширенного или обычного поиска в) в форме становитесь на поле ввода "что искать" и получаете представление. см. рис ниже.
Иногда можно модифицировать формы конфигурации, воспользоваться расширением или создать дополнительную обработку - с необходимым функционалом для теста
Еще пример решения Вот еще пример как получить текст в параметр. Тут мы используем два апи - 1С и autoamtion ui. То что не может сделать 1С, выполняем с помощью automation ui (управление мышкой, отправка комбинаций клавиш, работа с clipboard. Рисунки ниже.
Как это сделать?
Замечание
Снимок отчета по результатам выполнения теста для Фреймворка "Тестирование 3.0"
Спасибо большое за варианты, будем применять. Ждем видеоуроков :)
@SolovevaIV могли бы вы детализировать по видео-урокам. Заранее спасибо. 1) А в каком направлении и о чем интересно было бы чтобы мы рассказали в видео уроках? Примеры использования, первые шаги, что-то другое? 2) Какие темы не раскрыты? 3) Какие возникают сложности при использовании инструментов?
Возникают некоторые вопросы, скорее связанные с моим недопониманием, в частности:
В моем понимании мне необходимо созданные тесты добавить в какой-либо локальный репозиторий, и выбранные мною тесты запускать, по результатам окончания процесса выполнения тестов я формирую отчет.
Не могу разобраться когда какие элементы конфигурации применять, так как для меня остался не раскрыт полный процесс тестирования.
А видео-уроки буду ждать по применению WinAutomationUI, надеюсь они будут:)
Да, все верно. Менеджер сценарного теста это полноценный IDE. В нем создаются тесты с использованием записи и/или в режиме конструктора.
Чтобы тесты запускались по нажатию "пары кнопок" необходимо использовать конфигурацию "тестирование". Для этого последовательно необходимо сделать следующую последовательность действий (настройку базы не рассматриваем) Пример видео: запуск и выполнение тестов а) Подсистема тестирование. Создать новый элемент в справочнике "Тесты", указав путь к сценарию тестирования. б) Подсистема планировщик. Создать новое задание с помощью конструктора заданий "Сценарий UI" и указать элемент справочника а) в качестве теста. в) Подсистема планировщик. Создать новое задание проверки (одно на тестируемую базу) или в текущее задание проверки добавить задание выполнения теста шаг б)
Чтобы проверка запускалась автоматически, то ее можно добавить в планировщик и настроить расписание.
Совершенно верно. Пункт выше 2 б).
Поясняю. Обычное задание - запускает 1 (один) тест. Задание проверки - запускает "все" тесты (там в конструкторе есть табличка, где указываете список обычных заданий). Это последовательный и параллельный запуск всех тестов (ожидание прохождения всех тестов). И все выполненные тесты в рамках проверки получают один идентификатор в отчете.
Поясню на пальцах)
В моем понимании мне необходимо созданные тесты добавить в какой-либо локальный репозиторий, и выбранные мною тесты запускать, по результатам окончания процесса выполнения тестов я формирую отчет.
А) Да, Вы добавляете все файлы тестов в репозиторий - оптимально GIT. Б) Если вы запускаете тесты вручную, а не автоматически. Загружайте их с помощью обработки (загрузка отчетов allure или Juint - зависит от выбранного формата). При загрузке указываете номер проверки (создаете новую, если проверяете новый релиз) и базу на которой выполняете тестирование. В) Отчет - это обработка AllureSkin автоматически формирует отчет, как только вы подгружаете новые результаты
Не могу разобраться когда какие элементы конфигурации применять, так как для меня остался не раскрыт полный процесс тестирования.
Подсистемы: Тестирование - все что связано с тестами Планировщик - все что связано с заданиями Справочники: Тесты - указываете имя теста и путь к файлам сценария Задание - позволяет запускать автоматически один тест или проверку (все тесты) Тестируемый клиент и база 1с - указываете параметры базы, на которой проверяете. Дополнительные обработки - полезные отчеты и действия Проверка - сущность по которой можно сгруппировать результаты тестов
Огромное спасибо за помощь. Теперь все стало намного яснее!
Добрый день! Не удается запустить тесты, не знаю в чем может быть проблема:
Создала сценарные тесты (загрузила из файла скрипт, который создан с помощью менеджера сценарного теста)
Перехожу в планировщик для создания задания.
По кнопке "Создать по шаблону" почему то нет шаблонов, поэтому загружаю конструктор из файла
Создала задание и задание проверку
Перехожу в планировщик и создаю задание для выполнения
Для выполнения задания нажимаю "Выполнить сейчас" и перехожу в "Обзор и управление выполнением заданий"
Тесты не выполняются, указаны по два раза потому что один набор тестов для текущей 22 сборки и такой же набор для 12 сборки (прекратить ее не получается)
Насколько я понимаю может быть проблема в настройке базы. Хотелось бы узнать, что необходимо указывать в настройке Тестируемые клиенты? Как я поняла, большинство значений переменных берется из этой настройки. Сами настройки базы указаны верно
по порядку:
2) Чтобы для пользователя открывалась всегда обработка allure skin на рабочем столе, необходимо а) загрузить обработку AllreSkin дополнительные отчеты и обработки в) далее открыть "настройки рабочего места начальной страницы " г) создать запись, указать пользователя и обработку
3) Давайте проверим что настроено регламентное задание (судя по всему - оно не настроено) а) перейдите в Администрирование б) откройте Консоль заданий, "Сервис->Консоль заданий" в) настройке два заданий: укажите использовать, укажите пользователя администраторов в поле и настройке расписание выполнения
г) после настройки у вас должны запуститься задания.
защита от запуска многократного одинаковых заданий стоит, но видимо не предусматривала запуск без активных заданий.
4) Далее для корректной работы задний (запуска сценариев) для службы под которой выполняется работа базы "Тестирование 3.0" должна быть активна настройка взаимодействия с рабочим столом. Иначе не корректно будет выполняться запуск и работа сценариев для платформы 1С.
5) Далее должны быть настроены пути для запуска тестов. а) перейдите в подсистему администрирования б) откройте "настройки работы пользователя на рабочем месте" в) для пользователя администратор + имя сервера укажите обязательно следующие пути (на сервере): Путь к исполняемому файлу 1С, Путь к каталогу GIT, Путь к каталогу библиотека сценариев, Путь к каталогу отчетов выполнения тестов (туда куда будут складываться тесты, Путь к внешнему сервису для автоматизации 'Win Automation UI'.
6) Если вы хотите, чтобы в тестах сохранялись картинки, то обязательно нужно создать задание запуска WinAutomationUI и включить его запуск в задание проверки (самое начало). Конструктор задания для этой задачи еще не готов, но его можно сделать руками, если требуется могу описать как.
Спасибо, настройки для пользователей были настроены как на видео уроке, оказалось были проблемы с настройками регламентного задания и настройками создания заданий.
Если не составит труда, то было бы интересно узнать как сделать конструктор задания для WinAutomationUI
Помимо этого, из-за того что долго пыталась разобраться насоздавала много элементов, которые в дальнейшем не нужны, есть ли возможность их удалить после того, как я пометила их на удаление? Не смогла найти обработчик для удаления элементов.
а). Если вы про удаление справочников, то через "все функции"->стандартные->удаление помеченных объектов. б). Для регистров по заданиям, то откройте форму регистра нажмите Ctrl+A и далее Del.
а) Создайте новое действие "Запустить ExternalAutomationUI" с типом "выполнить произвольный код":
`// I) если открыт, то закроем Сообщение = ""; PID = ПланировщикЗаданийСервер.ПолучитьЗначениеПользовательскойПеременной(Неопределено,"ExternAutomationUI 8080");
Если НЕ PID=Неопределено Тогда ПланировщикЗаданийКлиентСервер.ЗавершитьПроцессЛокально(PID,Сообщение); КонецЕсли;
// II) запустить и сохранить в параметр Сообщение = ""; PID = ПланировщикЗаданийКлиентСервер.ЗапуститьПриложениеЛокально("\общая папка или локальный путь\erp-tests\ExternAutomationUI\WinAutomationUI.exe -StartWebServer -Port 8080",Сообщение); Если PID>0 Тогда ПланировщикЗаданийСервер.УстановитьЗначениеПользовательскойПеременной(Неопределено,"ExternAutomationUI 8080",PID); КонецЕсли; `
б) Создайте задание "Запуск ExternalAutomationUI" и в него "Состав заданий" добавьте действие "Запустить ExternalAutomationUI"
г) Создайте еще одно действие "Закрыть ExternalAutomationUI"
`// закрыть и удалить параметр Сообщение = ""; PID = ПланировщикЗаданийСервер.ПолучитьЗначениеПользовательскойПеременной(Неопределено,"ExternAutomationUI 8080");
Если НЕ PID=Неопределено Тогда ПланировщикЗаданийКлиентСервер.ЗавершитьПроцессЛокально(PID,Сообщение); ПланировщикЗаданийСервер.УдалитьЗначениеПользовательскойПеременной(Неопределено,"ExternAutomationUI 8080"); КонецЕсли;` д) Создайте задание "Закрыть ExternalAutomationUI" и используете в составе данные шага г)
е) Теперь в задании проверки укажите с номером "0" задание "ЗАпуск ExternalAutomationUI", а самым последним шагом "Закрытие ExternalAutomationUI"
@SolovevaIV предлагаю закрыть обсуждение. Для обсуждения других вопросов создаем отдельные задачи.
Возникает ошибка при попытке получить значение ячейки таблицы Четкое и краткое описание ошибки или не верного поведения.
Воспроизведение Шаги по воспроизведению ошибки:
Ожидаемое поведение Значение ячейки записывается в указанный параметр
Screenshots
Desktop (please complete the following information):
Дополнительно Есть ли способ как то получить значение ячейки таблицы