Java API: Test kit for asynchronous testing of typed actors.
Used for synchronous testing akka.actor.typed.Behaviors.
Used for synchronous testing akka.actor.typed.Behaviors. Stores all effects e.g. Spawning of children, watching and offers access to what effects have taken place.
Not for user extension or instantiation. See BehaviorTestKit.create
factory methods
For asynchronous testing of Behavior
s running see ActorTestKit
Not for user instantiation, see ManualTime#get
Utility for use as an ActorRef when *synchronously* testing akka.actor.typed.Behavior with akka.actor.testkit.typed.javadsl.BehaviorTestKit.
Utility for use as an ActorRef when *synchronously* testing akka.actor.typed.Behavior with akka.actor.testkit.typed.javadsl.BehaviorTestKit.
If you plan to use a real akka.actor.typed.ActorSystem then use akka.actor.testkit.typed.javadsl.TestProbe for asynchronous testing.
Use TestInbox.create
factory methods to create instances
Not for user extension
A Junit external resource for the testkit, making it possible to have Junit manage the lifecycle of the testkit.
A Junit external resource for the testkit, making it possible to have Junit manage the lifecycle of the testkit. The testkit will be automatically shut down when the test completes fails.
Note that Junit is not provided as a transitive dependency of the testkit module but must be added explicitly to your project to use this.
Example:
public class MyActorTest { @ClassRule public static final TestKitResource testKit = new TestKitResource(); @Test public void testBlah() throws Exception { // spawn actors etc using the testKit ActorRef<Message> ref = testKit.spawn(behavior); } }
Java API: * Create instances through the create
factories in the TestProbe companion.
Java API: * Create instances through the create
factories in the TestProbe companion.
A test probe is essentially a queryable mailbox which can be used in place of an actor and the received messages can then be asserted etc.
Not for user extension
Factories for behavior effects for BehaviorTestKit, each effect has a suitable equals and can be used to compare actual effects to expected ones.
Manual time allows you to do async tests while controlling the scheduler of the system.
Manual time allows you to do async tests while controlling the scheduler of the system.
To use it you need to configure the ActorSystem
/ActorTestKit
with ManualTime.config and access the
scheduler control through ManualTime.get()
Java API: Test kit for asynchronous testing of typed actors. Provides a typed actor system started on creation, that can be used for multiple test cases and is shut down when
shutdown
is called.The actor system has a custom guardian that allows for spawning arbitrary actors using the
spawn
methods.Designed to work with any test framework, but framework glue code that calls
shutdownTestKit
after all tests has run needs to be provided by the user.Use
TestKit.create
factories to construct manually or TestKitJunitResource to use together with JUnit testsFor synchronous testing of a
Behavior
see BehaviorTestKit