CSharp Allure classic NUnit with improvements

Добрый день.
К сожалению, в планах такого нет, по простой причине - я не использую MSTest и не знаком с ним.

Добрый день! Подскажите, планируется ли добавление поддержки netcore атрибута [AllureStep]?

Привет!
Вполне вероятно, что после новогодних праздников будет начата работа над этим вопросом.

1 лайк

Добрый день!
Тесты падают на первом методе с атрибутом [AllureStep] с исключением NullReference.
Это я делаю что-то не так, или в чем проблема ?)
Выше читал что добавлена возможность работы с этим атрибутом…

Добрый день.
Подробности бы.
А лучше, если это возможно, залить неработающую часть как проект на гитхаб.

Собственно, вот. Тестовый проект:

Буду очень благодарен за помощь :slight_smile:

Всё валиться на методе Login в класе LoginPage
Но в рипорте этот шаг как “login” отображен. Значит атрибут работает. Возможно я что-то где-то сделал не так.

1 лайк

Беглым взглядом могу сказать, что проблема в «каше» зависимостей.
Вам надо как минимум удалить пакет Allure.Commons.
А так же у вас адаптеры для NUnit2 подключены.

Копнув глубже, могу сказать что удаление пакетов не даст ожидаемого эффекта (хотя сделать это всё равно надо).
Это дефект.
Поправлю в ближайшее время.

Спасибо за фидбэк!

Залил новую версию с фиксом.

Удалил аллюр коммонс.
Стянул вашу новую версию.

А теперь самое интересное. В дебаг режиме в момент вхождения в методы с атрибутом AllureStep пишет Source Not Available. Метод ExpandMenuTreeAndSeectItem вообще не может выйти из switch-case, break не срабатывает, постоянно возвращая на предыдущую строку.
Если убрать атрибут AllureStep то всё работает, как и раньше. В общем, как то так.
Судя по всему нужен еще один фикс))

К сожалению, это просто отсутствие документации по настройке проекта. Я уже и забыл про это :slight_smile:

Для решения этой проблемы, Вам надо изменить настройки проекта.

  1. Заходим в свойства проекта, в меню выбираем “Build”

  2. Двигаем вниз, выбираем “Advanced”, и ставим “Full”:

А вот по поводу того, как ведёт себя код в методах со switch, это интересно.

Можно пример метода?

upd: пример можно не давать, со switch этот атрибут не умеет работать (пока что).

Так же из известного, если метод ничего не возвращает и содержит только for each, тоже не будет работать.

upd2: Все эти проблемы есть только если метод ничего не возвращает (void).

Как временное решение - сделать возвращаемое значение.

Убрал войд и работает норм. За это спасибо)
А вот по поводу настроек проекта у меня как раз таки выбрано full как и у вас на скрине, но всё равно выдает ошибку Source Not Available во время вхождения в метод.

Что-то не могу понять, про какую Вы тогда ошибку говорите. :slight_smile:

Ну я имею ввиду что у меня настройки проекта такие же как и у вас на скрине, но при вхождении в метод у меня каждый раз ошибка.
То есть Debugging info - Full должно пофиксить проблему, но у меня это почему то не работает

Честно говоря ни разу с таким не сталкивался.
А если нажать “view disassembly”, что там будет показываться?

Я полагаю что это настройки дебага в VS, но не уверен.

Вот:

У меня Ваш проект (тот что в репе) вообще не собирается. Возможно что пакет с дотнетом 4.5.2 не совсем корректно работает.

Попробуйте повысить дотнет хотя бы до 4.6. Должно помочь.

Ошибки с тем, что не работает switch / for-each, когда метод ничего не возвращает я поправил, в новой версии (3.0.6) не должно быть проблем.

Так же попутно поправил ситуацию, когда в методе есть какие-то try/catch.

Сегодня вечером апдейтну версию дотнета, Вашу библиотеку и отпишусь

Спасибо за Ваш труд :slight_smile: