springtestcointainerjupiter
mockito-object-injection
springtestcointainerjupiter | mockito-object-injection | |
---|---|---|
1 | 1 | |
11 | 8 | |
- | - | |
0.0 | 4.5 | |
about 2 years ago | 7 months ago | |
Java | Java | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
springtestcointainerjupiter
-
Spring Boot + Junit 5 + Testcontainers
I felt the best way to handle this was to figure it out for myself, and then share an example repo with the community, so here you go: https://github.com/Luke-Sikina/springtestcointainerjupiter
mockito-object-injection
-
JEP 457: Class-File API for Parsing, generating, transforming
This is pretty exciting... I've used them all libraries at this point in my career: CGLib, ASM, BCEL, ByteBuddy, Javassist, etc... each has its pluses and minuses. I've designed everything from profiling agents, to systems that pack decimals into EBCDIC and invoke COBOL programs on big IBM iron, to lightweight JIT compilers, all using these libraries.
> In 2002, the visitor approach used by ASM seemed clever
I couldn't agree more. The visitor pattern was very hard to explain/justify back then, and still difficult to explain to newbie programmers just entering the profession.
Looking at the examples, I think this is going to be an official replacement for ASM, meaning it's going to be pretty low level. The use of streams pretty straightforward.
If anyone from the JEP is reading this: I have two pieces of feedback!
First, take some inspiration from the way CDI Portable Extensions work. This is probably the most delightful extension API I've ever used. The @Observe callbacks are super simple to explain to people and it's really easy to write extensions for the framework.
Next, I wouldn't ignore the need for a higher-level API akin to ByteBuddy or Javassist. Sometimes I just want to write an interpreter or intercept a method call and thats it.
For example in my Junit/Mockito extension https://github.com/exabrial/mockito-object-injection I need to intercept a call to the class under test in order to lazily inject dependencies at the last possible moment. While I certainly could do this with ASM, Javassist makes this fairly simple with it's MethodHandler api.
Side note, it's a damn shame we don't have a mobile operating system that is JVM native :/ All this cool APIs simply never reach a huge number of devices.
What are some alternatives?
testing-databases
Mockito - Most popular Mocking framework for unit tests written in Java
spring-datastore-examples - Examples on how to integrate and test different databases/datastores with Spring and TestContainers
mock-box - Mock-Box is a lightweight and powerful mock library that supports testing.
testing-spring-boot-applications-masterclass - 🍃 Build Better Spring Boot Applications: A Comprehensive Testing Course to Boost Your Confidence and Productivity.
unlogged-sdk - Unlogged SDK for recording code execution
elementary - A suite of libraries that simplify creating and unit testing annotation processors.
java-testing-toolbox - :wrench: Testing Tools & Libraries Every Java Developer Must Know
Java_SpringBoot_Gym_Backend - A backend for a gym website with a number of use case / endpoints created and includes unit/integration tests. Intended to be the backend for a React or Vue capstone site. Utilises controller-service-repository pattern.
Speedment - Speedment is a Stream ORM Java Toolkit and Runtime
wiremock-spring-boot - WireMock Spring Boot drastically simplifies testing HTTP clients in Spring Boot & Junit 5 based integration tests.