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

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

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

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

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

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

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

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

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

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

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

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

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

Нажать("!ФормаПечатьРасчета");
Здесь();
ПроверитьШаблон ( "" );
grumagargler; +1 Ответить
12. user670203_terskovaoa 27.12.18 16:23 Сейчас в теме
Здравствуйте. Как можно проверить открыта кассовая смена или нет, если нет то нажать открыть ее, а если да, то дальше работать с кассой???
13. grumagargler 612 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 612 23.01.19 17:13 Сейчас в теме
(15) Я боюсь не понял ваш случай, но попробую привести пару соображений.
Если ваш документ при записи дает ошибки заполнения реквизитов, которые отображаются внизу, в виде сообщений, и вы хотите самостоятельно определить есть эти ошибки или нет, тогда такой под может помочь:
Здесь ();
Нажать ( "#ФормаПровестиИЗакрыть" );
попытка
	ПроверитьОшибки ();
исключение
	Стоп ( "Ошибка проведения документа!" );
конецпопытки;


Кроме этого, в конце выполнения теста, тестер сам проверят есть ошибки или нет. Чтобы это отключить - в коде теста напишите:
СтандартнаяОбработка = ложь;
17. sCHTASS 49 24.01.19 05:25 Сейчас в теме
(16) Мне нужно проверить, чтобы пустой документ нельзя записать. Я его создаю и пытаюсь записать через кнопку "Записать". При выполнении метода Нажать() валиться тест с ошибкой.
18. grumagargler 612 24.01.19 07:06 Сейчас в теме
(17) код выше, по идее и решает эту задачу. Вместо #ФормаПровестиИЗакрыть напишите #ФормаЗаписать. Платформа попробует записать документ. Если ошибки будут - вы попадете в исключение, если ошибок не будет, тогда код продолжит своё выполнение. Вот пример:
Здесь ();
Нажать ( "#ФормаЗаписать" );
попытка
    ПроверитьОшибки ();
    ошибокНебыло = истина;
исключение
    ошибокНебыло = ложь;
конецпопытки;
если ( ошибокНебыло ) тогда
    Стоп ( "Запись пустого документ должна была быть с ошибкой!" );
конецесли;
Сообщить ("Ошибки были показаты, всё хорошо");
СтандартнаяОбработка = ложь; // чтобы тестер не выдал ошибку, он же не знает, что наличие ошибки - не ошибка
Показать
19. sCHTASS 49 24.01.19 10:35 Сейчас в теме
20. FreeArcher 87 21.08.19 07:00 Сейчас в теме
Подскажите, как посчитать и итог, например, по колонке Сумма в таблице
таблица = Получить ( "!Товары" );
А дальше я не разобрался?
21. grumagargler 612 21.08.19 17:35 Сейчас в теме
(20) см. в справке на сайте test1c.com раздел Как подсчитать итог по колонке таблицы?
22. FreeArcher 87 21.08.19 17:51 Сейчас в теме
(21) Увидел, спасибо.
А есть где полный перечень методов у объектов тестера?
Наверняка кроме список.ПерейтиКПервойСтроке () есть ещё что-нибудь и примеры не все описывают.
Напрягает не понимание что из себя представляет полученный объект...
23. grumagargler 612 22.08.19 16:33 Сейчас в теме
(22) методы и свойства тестируемых объектов описаны в синтаксис-помощнике, в конфигураторе. Методы самого тестера, на сайте test1c.com
24. FreeArcher 87 23.08.19 06:25 Сейчас в теме
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

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

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

Ведущий программист 1С
Омск
зарплата от 70 000 руб. до 110 000 руб.
Полный день

Консультант-аналитик 1С ЗУП 3.1
Белгород
зарплата от 40 000 руб. до 50 000 руб.
Полный день

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