0. grumagargler 516 19.07.18 22:19 Сейчас в теме

Тестер: частые вопросы

Ошибкам бой - тесты норма жизни!

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо
1. olegtymko 146 26.07.18 05:27 Сейчас в теме
Огонь! Надо будет попробовать вашу систему тестирования.
Max27; grumagargler; +2 Ответить
2. karpik666 2363 26.07.18 09:13 Сейчас в теме
Подскажите тестер только для управляемых форм или для обычных тоже подойдет?
4. grumagargler 516 26.07.18 15:09 Сейчас в теме
(2) только для управляемых
3. ivanov660 1154 26.07.18 11:03 Сейчас в теме
Подскажите:
- Запуск через командную строку еще не реализовали?
- И выгрузку результатов выполнения в один из форматов отчетов XML JUnit, Allure или другой?
5. grumagargler 516 26.07.18 15:15 Сейчас в теме
(3) Запуск тестера с передачей ключей был изначально, но вероятно я не понял ваш вопрос.
Тесты, скрипты для CI и отчетность, всё внутри тестера, делать внешнюю задач пока не поступало.
6. acsent 1133 15.10.18 16:53 Сейчас в теме
Но почему бы не писать обработки тестирования, а не скрипты. тогда с раскрасской нет проблем.
Типо как в xUnitFor1C
7. grumagargler 516 15.10.18 18:08 Сейчас в теме
(6)
Но почему бы не писать обработки тестирования, а не скрипты. тогда с раскрасской нет проблем.

Причин много, вот некоторые из них:
- скорость написания-запуска, в одном окне на втором мониторе
- скриптами легче манипулировать, это текст. В тестере, в дереве их легко искать, открывать в отдельных вкладках, запускать, смотреть версии, синхронизировать (выгружать/загружать), делать глобальный рефакторинг
- код скрипта дорабатывается тестером перед запуском для возможности контроля исполнения каждой строки кода, замера времени, формирования полного пути в случае ошибок (в случае взаимосвязанных тестов).

С синтаксической подсветкой проблем уже нет, есть интеграция с vscode
8. Fragster 882 09.11.18 15:31 Сейчас в теме
Отличный инструмент, действительно удобно. Жду развития плагина для vscode (почти всегда неправильно работает intellisense по элементам управления :))

При использовании возник вопрос:

Как проверить данные в табличной части?

ОписаниеСтроки = Новый Соответствие();
ОписаниеСтроки.Вставить("Колонка 1", "Представление 1"); // возможно ли тут использовать не представление, а значение?
ОписаниеСтроки.Вставить("Колонка 1", "Представление 2"); // возможно ли тут использовать не представление, а значение?
Список = Получить("!ТабличнаяЧасть");
Если Не Список.ПерейтиКСтроке(ОписаниеСтроки) Тогда
	ВызватьИсключение "Строка не найдена";
КонецЕсли;

Проверить ( "!ТабличнаяЧастьПоле", ОжидаемоеЗначение); // тут ошибка 18: Неподходящий тип элемента управления для вызванного действия. 
Показать
9. Fragster 882 09.11.18 15:53 Сейчас в теме
(8) Методом тыка определил, что для полей табличных частей всегда надо указывать родителя:

Проверить("!ТабличнаяЧасть / !ТабличнаяЧастьПоле", 19500); // для текущей строки
Проверить("!ТабличнаяЧасть / !ТабличнаяЧастьПоле [3]", 19500); // для строки по номеру
10. grumagargler 516 09.11.18 18:52 Сейчас в теме
(9) День добрый! Спасибо за отзыв!
Для проверки, вы еще можете передать родителя в виде третьего параметра:
таблица = Получить ( "!Товары" );
Проверить("!ТабличнаяЧастьПоле", 19500, товары);

Развитие плагина идет, но пока интелисенс работаем в основном на подброс названия поля по типу, согласно открытого в текущий момент тестового приложения.
Приглашаю вас в чат, там я смогу более оперативно отвечать на вопросы.
11. Fragster 882 09.11.18 19:41 Сейчас в теме
Еще прошу добавить в ЧаВо - для проверки шаблона таблицы, открывающейся в новом окне табличного документа - в качестве имени поля надо передавать пустую строку (на странице элементов формы отображается <Поле>)

Нажать("!ФормаПечатьРасчета");
Здесь();
ПроверитьШаблон ( "" );
grumagargler; +1 Ответить
12. user670203_terskovaoa 27.12.18 16:23 Сейчас в теме
Здравствуйте. Как можно проверить открыта кассовая смена или нет, если нет то нажать открыть ее, а если да, то дальше работать с кассой???
13. grumagargler 516 27.12.18 17:15 Сейчас в теме
(12) Добрый день. Для этого можно воспользоваться методом Дождаться () с передачей заголовка нужного окна. Метод вернет ложь, если такого окна найти не удается, и в этом случае вы можете инициировать открытие нужного документа/формы обработки. Если останутся вопросы - приходите в чат поддержки на https://gitter.im/tester1c/Lobby
14. user670203_terskovaoa 27.12.18 17:28 Сейчас в теме
Спасибо. Это не форма и не документ, это получается кнопка на форме "Открыть смену" и "Закрыть смену"
15. sCHTASS 49 23.01.19 08:57 Сейчас в теме
Не совсем по теме, но может кто даст ответ.
Нужно написать проверку попытки пользователя записать пустой документ - документ не должен записываться в этом случае. Код теста обернул в Попытка-Исключение, чтобы анализировать ошибку. Но все равно тест падает с ошибкой. Что тут можно сделать?
16. grumagargler 516 23.01.19 17:13 Сейчас в теме
(15) Я боюсь не понял ваш случай, но попробую привести пару соображений.
Если ваш документ при записи дает ошибки заполнения реквизитов, которые отображаются внизу, в виде сообщений, и вы хотите самостоятельно определить есть эти ошибки или нет, тогда такой под может помочь:
Здесь ();
Нажать ( "#ФормаПровестиИЗакрыть" );
попытка
	ПроверитьОшибки ();
исключение
	Стоп ( "Ошибка проведения документа!" );
конецпопытки;


Кроме этого, в конце выполнения теста, тестер сам проверят есть ошибки или нет. Чтобы это отключить - в коде теста напишите:
СтандартнаяОбработка = ложь;
17. sCHTASS 49 24.01.19 05:25 Сейчас в теме
(16) Мне нужно проверить, чтобы пустой документ нельзя записать. Я его создаю и пытаюсь записать через кнопку "Записать". При выполнении метода Нажать() валиться тест с ошибкой.
18. grumagargler 516 24.01.19 07:06 Сейчас в теме
(17) код выше, по идее и решает эту задачу. Вместо #ФормаПровестиИЗакрыть напишите #ФормаЗаписать. Платформа попробует записать документ. Если ошибки будут - вы попадете в исключение, если ошибок не будет, тогда код продолжит своё выполнение. Вот пример:
Здесь ();
Нажать ( "#ФормаЗаписать" );
попытка
    ПроверитьОшибки ();
    ошибокНебыло = истина;
исключение
    ошибокНебыло = ложь;
конецпопытки;
если ( ошибокНебыло ) тогда
    Стоп ( "Запись пустого документ должна была быть с ошибкой!" );
конецесли;
Сообщить ("Ошибки были показаты, всё хорошо");
СтандартнаяОбработка = ложь; // чтобы тестер не выдал ошибку, он же не знает, что наличие ошибки - не ошибка
Показать
19. sCHTASS 49 24.01.19 10:35 Сейчас в теме
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Москва
зарплата от 50 000 руб. до 60 000 руб.
Полный день

Автор новостных обзоров на тему 1С и бухучета
Санкт-Петербург
По совместительству

Программист 1С
Санкт-Петербург
зарплата до 120 000 руб.
Полный день

Работа от Инфостарт
Санкт-Петербург
Временный (на проект)

Руководитель отдела внедрения 1С
Новосибирск
зарплата от 60 000 руб. до 160 000 руб.
Полный день