Описание тега archunit
ArchUnit - это бесплатная, простая и расширяемая библиотека для проверки архитектуры вашего Java-кода. То есть ArchUnit может проверять зависимости между пакетами и классами, слоями и срезами, проверять циклические зависимости и многое другое.
2
ответа
Как проверить, что аннотация метода использует атрибут с определенным значением, используя archunit
У меня есть @Audit аннотация, он имеет много необязательных атрибутов, мне нужно обеспечить использование одного логического атрибута useAccount = true для определенных пакетов. Я пытаюсь использовать archunit для выполнения этой проверки, таким обр…
01 фев '19 в 21:34
1
ответ
Проверка архитектуры вашего кода Clojure с помощью модульных тестов
Я был вдохновлен купить эту книгу: Построение эволюционных архитектур и чистой архитектуры. Одной из концепций является возможность тестирования вашей архитектуры в коде. В частности, я хотел бы иметь возможность проверять зависимости между простран…
23 май '18 в 13:08
2
ответа
Как предотвратить использование определенных пакетов Spring с ArchUnit?
Если бы я хотел сохранить определенный пакет Java свободным от сторонних зависимостей с помощью ArchUnit, как бы я это сделал? Точнее говоря, я пытаюсь сохранить мою модель предметной области в гексагональной архитектуре свободной от Spring-кода. Я …
14 дек '18 в 22:41
1
ответ
Java ArchUnit: обнаружение аннотации в методах getMethodCallsFromSelf
Я аннотировал некоторые методы с помощью пользовательской аннотации: "ExistForTesting" @Documented @Target({TYPE, FIELD, METHOD}) @Retention(SOURCE) public @interface ExistForTesting { String why() default ""; } Я хотел бы написать (Junit5 + ArchUni…
02 мар '19 в 14:18
0
ответов
Поиск неиспользуемых классов в ArchUnit, как найти ссылку на MyClass.class?
Я пытаюсь сделать модульный тест с ArchUnit, чтобы проверить, есть ли у меня неиспользуемые классы. Но я не могу понять, как проверить, есть ли ссылка на какой-либо класс с помощью MyClass.class. Например, у меня есть класс: public class MyClass { .…
07 дек '18 в 14:24
2
ответа
Как игнорировать классы в тестовом классе с ArchUnit
Я написал свой первый тест ArchUnit: import static com.tngtech.archunit.library.dependencies.SlicesRuleDefinition.*; // more non-static imports @RunWith(ArchUnitRunner.class) @AnalyzeClasses(packages = "my.domain.project") public class PackageStruct…
20 июн '17 в 13:25
0
ответов
Что такое эквивалент ArchUnit в экосистеме JavaScript?
ArchUnit - это бесплатная, простая и расширяемая библиотека для проверки архитектуры вашего кода Java с использованием любой простой среды модульного тестирования Java. То есть ArchUnit может проверять зависимости между пакетами и классами, слоями и…
13 июн '18 в 20:42
1
ответ
Правило слоистой архитектуры ArchUnits не включает поля
Мы проверяем нашу программную архитектуру по некоторым правилам ArchUnit. Одним из них является тест для нашей многоуровневой архитектуры. Это хорошо работает для методов. Если мы получим доступ к методу layer3 из layer1, мы получим исключение. Но е…
27 май '19 в 07:42
0
ответов
ArchUnit: самый элегантный способ проверить, зависят ли пакеты друг от друга
У меня есть две посылки com.myapp.foo а также com.myapp.bar и я хочу знать самый элегантный способ явно проверить, если эти два пакета (и только те, как есть еще com.myapp.XX) не зависят друг от друга. Вот что я сейчас имею (работает великолепно): S…
22 мар '19 в 13:48
3
ответа
ArchUnit: как избежать нарушения зависимости от классов Java
Я хочу убедиться, что классы в данном пакете относятся только к классам, которые находятся в самом пакете. Однако я получаю нарушение, сообщая, что класс a зависит, например, от java.lang.String, что для меня совершенно нормально. Есть ли способ игн…
03 июн '19 в 14:54
2
ответа
ArchUnit для тестирования актуальной многоуровневой архитектуры
В настоящее время в нашем проекте мы реализовали многоуровневую архитектуру, в которой контроллер, служба, хранилище помещаются в один пакет для каждой функции, например: feature1:Feature1Controller Feature1Service Feature1Repository feature2:Featur…
14 авг '19 в 11:16
1
ответ
ArchUnit обеспечивает наличие аннотации
Данная библиотека ArchUnit в версии 0.12: Можно ли протестировать методы сценария, помеченные A также следует аннотировать B или быть объявленным в типе, помеченном B"? Пример: A.java @Target({ElementType.METHOD}) @Retention(RetentionPolicy.RUNTIME)…
04 ноя '19 в 21:05
2
ответа
Выполнение тестов ArchUnit из библиотеки Java
У меня есть несколько микросервисов Java Dropwizard с похожей структурой. Моя цель - написать набор тестовых примеров ArchUnit, которые необходимо запускать в каждой службе, и сборка должна завершиться неудачно, если эти тестовые примеры не пройдут.…
30 окт '19 в 15:58
3
ответа
Как исключить класс из правила ArchUnit?
При создании правила для многоуровневой архитектуры в ArchUnit мне непонятно, как исключить один класс (Main).Базовый пример исключает с источником и целью. ... но я не понимаю, как это приспособить к моим потребностям. Я просто хочу, чтобы игнориро…
10 янв '20 в 11:54
0
ответов
Как обеспечить соблюдение частных параметров в конструкторах в Kotlin с помощью ArchUnit?
У меня такой класс: class CreateUser(private val userRepo:UserRepository) { fun execute(user:User) { userRepo.save(user) } } У меня есть такой тест: @Test fun `private dependencies at constructors`() { constructors() .that().areDeclaredInClassesThat…
17 янв '20 в 02:54
1
ответ
Никакие классы обслуживания не должны использовать Java.util.date
Привет, я хочу написать тест ArchUnit для классов обслуживания, чтобы поля не могли быть Date, пока что я могу выполнить что-то близкое к тому, что мне нужно, выполнив следующие действия: @Test public void all_public_methods_in_the_controller_layer_…
25 окт '19 в 16:42
1
ответ
Как я могу утверждать, расширяет ли класс AnyVal с помощью ArchUnit
Я хочу написать арку тест Arch, чтобы убедиться, что класс расширяетсяAnyVal тип. val rule = classes().should().beAssignableTo(classOf[AnyVal]) val importedClasses = new ClassFileImporter().importPackages("a.b.c") isAnyVal.check(importedClasses) // …
06 июн '20 в 10:28
0
ответов
ArchUnit: как проверить наличие нежелательных зависимостей в сигнатуре / API класса?
Я хотел бы реализовать правило ArchUnit, которое проверяет нежелательные зависимости. Это легко сделать, но меня интересуют только нарушения, которые являются частью сигнатуры / API класса. Например, если класс использует нежелательную зависимость в…
26 июн '20 в 09:38
1
ответ
ArchUnit - сопоставление имен без учета регистра
Я пытаюсь настроить тесты с Arch Unit, чтобы проверить свои соглашения об именах, следуя официальным примерам. Кажется, что утверждения об именовании ArchUnit чувствительны к регистру, что меня беспокоит. Я хочу проверить, что в пакете нет классов d…
07 янв '20 в 12:57
0
ответов
Как определить правило Arch, чтобы запретить классам перехватывать определенные типы исключений?
Хотел бы я определить правило архива, запрещающее классам перехватывать данный тип исключения. Что-то вроде правила ниже: noClasses() .that() .resideOutsideOfPackage("..repository..") .should() .catchExceptions() .that() .areAssignableTo(SQLExceptio…
07 апр '20 в 01:02