-
Notifications
You must be signed in to change notification settings - Fork 127
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Падает в дамп при открытии тест ранера внешнего на 8.2.18.102, 19.83 #412
Comments
Какие действия выполняешь? |
Странная ошибка, боюсь, опять что-то из-за особенностей платформы 1С.
|
Действие - файл-открыть тест ранер.
В таком режиме отрабатывает, а если раскомментировать третью строку и закрыть первые две- падает стабильно. То-ли времени иногда не хватает на регистрацию, толи еще что. В итоге переписал у себя функцию в модуле объекта тест ранера "ЭтоВнешняяОбработка" на работу с "ИспользуемоеИмяФайла". Может включить ее в таком виде, раз не только у меня порой воспроизводится?
|
Давно хотел спросить, почему |
В общем, пока не понятно :( |
Жду ответа. |
Это была копипаста из запуска Мобильных инструментов разработчика, не заметил. Да собственно платформе без разницы, она съедает ТестРанера как отчет вроде. С другой стороны, если исходная ошибка прояляется (хоть и не стабильно) только в толстом клиенте обычных формах, то может для этого случая переписать определение "внешности" через |
Ошибка сегодня дома еще несколько раз повторилась на 8.2.19.68 :( |
У меня раннер в режиме обычных форм стал валить предприятие при запуске, во время загрузки тестов из-за информатора. Падает в дамп на строке 214 модуля объекта xddInformator: ScrptCtrl.AddCode(ТекстМодуля); |
@ValeraS платформа 1С какая? платформы винды? клиент-сервер, 32/64? |
8.2.19.121 файловая Windows 7 64 |
Странно, буду проверять. |
Аналогичный случай (с падением на ScrptCtrl.AddCode(ТекстМодуля); ) у меня объяснился тем, что тест не проходил синтакс контроль. В итоге, от загрузок тестов из папки пришлось перейти на загрузку теста из файла, так как иначе тест ранер конфликтует с автосохранением внешних обработок из снегопата. |
@Ndochp поясни конкретнее, при чем здесь синтакс-контроль. что-то я совсем не понял связи с Информатором. |
текс.... Пояснить не могу специально не воспроизвелось, в следующий раз как столкнусь, создам ишшку с примером воспроизведения. |
Согласен. Сейчас еще попинал со всех сторон, не воспроизвелось. |
Воспроизводится. При открытии раннера во время получения тестовых случаев из обработки. Не могу понять причину, может раз запуститься, а потом постоянно падает. Чаще падает чем, запускается. На другой машине с XP не воспроизводится. |
@ValeraS У тебя вылет именно по Информатору? |
@artbear да |
@Zaidfly насколько для тебя критично использование Информатора? |
@artbear, да, все тесты используют информатор в обоих проектах. Совсем не хочется отказываться от информатора. Сейчас люди пишут тесты и сразу прогоняют их. Когда их всреднем по 30-40 штук в одном тестовом наборе (в одной обработке), то очень велика вероятность того, что тесты будут писать, а регистрировать их вручную в процедуре ПолучитьСписокТестов() будут забывать. Написал тест, запустил - прогнал. Все зеленое, а на самом деле свой новенький тест и не прогнал. |
Нужно какое-то решение - возможность простого и удобного отключения/включения Информатора. |
Сейчас, на win7x64, 1cv8.2.19.121 файловый , падает с завидной постоянностью )) |
А можешь новую версию Информатора проверить? |
Ещё быстрее падает )) |
Ага, я протупил. Оказывается. вчера ночью выключил использование Информатора и падать перестало :) |
По поводу быстродействия: мне кажется странным решение передавать объект раннера через метод |
Поясни, не понял. |
Сейчас, метод А правильным кажется такой вариант |
В общем, кажется логичным, во все методы тестовой обработки, вызываемые из раннера, передавать объект раннера. |
Нет, это нелогично. Зачем в каждый метод передавать этот метод, когда это можно сделать один раз при инициализации? |
Ну и плюс красота тест.метода пропадет, если ему будет передаваться спец.параметр. |
Вот в чем нарушение красоты и гармонии. Функция "ПолучитьСписокТестов" |
Так сделано для упрощения интерфейса тестов и повышения юзабельности. |
Чем это не логично? С точки зрения ООП, по сути, тестовая обработка это потомок раннера. А дальше можно посмотреть на объекты в python, в каждый метод объекта первым параметром передается экземпляр класса ( |
В этом вопросе за неявную передачу self/this, как, например, в С++/C#/Java. |
Согласен с @artbear , вот чего бы не хотелось - это нести с из питона self :( . |
А в результате, инициализация через |
А зачем каждый раз при выполнении тестов проверять существование метода |
Мы только в ПолучитьСписокТестов можем получить юТест, т.е. или кажый раз передавть объект в процедуру теста self или же каждый раз вызывать ПолучитьСписокТестов, ну или требование в обработке объявлять экспортную переменную и туда явно писать Обработка.юТест = ЭтаФорма. |
Метод
Оптимизация работы разработчика и повышения юзабельности. |
Использование информатора для быстродействия в случае определения наличия метода Тесты из модуля объекта в управляемом режиме, сейчас, не подхватывают изменения. Клиентские тесты переподключаются каждый раз. |
У ОФ и УФ свои особенности. |
Плюс из-за особенностей 1С я лично люблю хранить и тесты, и боевой код в одной обработке, т.к. я работаю по ТДД. |
@pumbaEO Не нужно эту задачу закрывать, я ее специально переоткрыл вчера для дальнейшего обсуждения. |
Еще вариант решения: Если пользователь разрешает, то Информатор включается. Если ответ "Нет", то Информатор выключается. Один минус - вопрос придется задавать в ПередНачаломРаботыСистемы. Лично мне сейчас этот вариант импонирует больше всего, т.к. на 8.2.17 и 8.3 проблем пока не замечено :( |
Работы по Информатору уже выполнены. |
Падает на последней строке модуля объекта
ЭтоВстроеннаяОбработка = Не Метаданные.НайтиПоТипу(ТипЗнч(ЭтотОбъект)) = Неопределено;
по причине того, что ТипЗнч(ВнешниеОтчеты.Создать("F:\1CBase\xddTestRunner.epf")) у меня вызывает ошибку вида:
"Тип не определен "некий гуид"
Завершить работу/Перезапустить
The text was updated successfully, but these errors were encountered: