Motus.Abstractions
1.0.6
dotnet add package Motus.Abstractions --version 1.0.6
NuGet\Install-Package Motus.Abstractions -Version 1.0.6
<PackageReference Include="Motus.Abstractions" Version="1.0.6" />
<PackageVersion Include="Motus.Abstractions" Version="1.0.6" />
<PackageReference Include="Motus.Abstractions" />
paket add Motus.Abstractions --version 1.0.6
#r "nuget: Motus.Abstractions, 1.0.6"
#:package Motus.Abstractions@1.0.6
#addin nuget:?package=Motus.Abstractions&version=1.0.6
#tool nuget:?package=Motus.Abstractions&version=1.0.6
Motus.Abstractions
Pure interfaces and types for the Motus browser automation framework.
Overview
This package contains every interface that defines the Motus API surface: the browser hierarchy, input devices, network layer, and the plugin system. Plugin authors reference only this package, with no dependency on the engine or any protocol implementation.
Browser Hierarchy
| Interface | Purpose |
|---|---|
IBrowser |
Top-level browser instance; create contexts and pages |
IBrowserContext |
Isolated session with its own cookies, cache, and storage |
IPage |
Single browser tab; navigation, locators, evaluation, screenshots |
IFrame |
Frame-level counterpart to IPage |
ILocator |
Element finder with action methods (ClickAsync, FillAsync, TypeAsync, etc.) |
IElementHandle |
Low-level reference to a DOM element |
IJSHandle |
Reference to a JavaScript object |
Input and Network
| Interface | Purpose |
|---|---|
IKeyboard |
Keyboard input simulation |
IMouse |
Mouse input with button and coordinate control |
ITouchscreen |
Touch gesture simulation |
IRequest / IResponse |
Network request and response inspection |
IRoute |
Intercept and modify network requests |
IDialog |
Handle JavaScript dialogs (alert, confirm, prompt) |
IDownload |
Track and save file downloads |
ITracing |
Chromium trace capture |
Plugin System
| Interface | Purpose |
|---|---|
IPlugin |
Base plugin interface with lifecycle hooks |
IPluginContext |
Registration point for selector strategies, wait conditions, lifecycle hooks, and reporters |
ISelectorStrategy |
Custom element selection logic |
IWaitCondition |
Custom wait-until conditions |
ILifecycleHook |
Intercept navigation, actions, page creation, console messages, and errors |
IReporter |
Custom test result reporting |
Concurrency
| Interface | Purpose |
|---|---|
IBrowserPool |
Pool of browser instances for parallel test execution |
IBrowserLease |
Scoped lease on a pooled browser |
Installation
dotnet add package Motus.Abstractions
Usage
using Motus.Abstractions;
[MotusPlugin]
public class RetryClickHook : IPlugin, ILifecycleHook
{
public string PluginId => "retry-click";
public string Name => "Retry Click";
public string Version => "1.0.0";
public Task OnLoadedAsync(IPluginContext context)
{
context.RegisterLifecycleHook(this);
return Task.CompletedTask;
}
}
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- No dependencies.
-
net8.0
- No dependencies.
NuGet packages (6)
Showing the top 5 NuGet packages that depend on Motus.Abstractions:
| Package | Downloads |
|---|---|
|
Motus
Motus browser automation engine. Communicates with Chromium over CDP via WebSocket with no Node.js dependency. |
|
|
Motus.Testing
Shared browser fixture for Motus test framework integrations. |
|
|
Motus.Recorder
Test session recorder for Motus. Captures browser interactions and emits reproducible Motus test code. |
|
|
Motus.Testing.xUnit
xUnit integration for Motus browser automation. Provides collection and class fixtures for parallel test execution. |
|
|
Motus.Testing.MSTest
MSTest integration for Motus browser automation. Provides a base test class with per-test browser context isolation. |
GitHub repositories
This package is not used by any popular GitHub repositories.