userver: Testsuite Python support
Loading...
Searching...
No Matches
Testsuite Python support

Detailed Description

Functions, fixtures and classes to do functional testing with testsuite.

Nested Groups

 Fixtures
 Fixtures to use with testsuite.
 

Namespaces

namespace  pytest_userver
 Python module pytest_userver provides testsuite support for userver services.
 
namespace  pytest_userver.chaos
 Python module that provides testsuite support for chaos tests; see Chaos Testing for an introduction.
 
namespace  pytest_userver.client
 Python module that provides clients for functional tests with testsuite; see Functional service tests (testsuite) for an introduction.
 
namespace  pytest_userver.metrics
 Python module that provides helpers for functional testing of metrics with testsuite; see Functional service tests (testsuite) for an introduction.
 

Classes

class  pytest_userver.chaos.GateRoute
 Class that describes the route for TcpGate or UdpGate. More...
 
class  pytest_userver.chaos.BaseGate
 This base class maintain endpoints of two types: More...
 
class  pytest_userver.chaos.TcpGate
 Implements TCP chaos-proxy logic such as accepting incoming tcp client connections. More...
 
class  pytest_userver.chaos.UdpGate
 Implements UDP chaos-proxy logic such as demuxing incoming datagrams from different clients. More...
 
class  pytest_userver.client.ClientWrapper
 Base asyncio userver client that implements HTTP requests to service. More...
 
class  pytest_userver.client.ClientMonitor
 Asyncio userver client for monitor listeners, typically retrieved from plugins.service_client.monitor_client fixture. More...
 
class  pytest_userver.client.MetricsDiffer
 A helper class for computing metric differences. More...
 
class  pytest_userver.client.Client
 Asyncio userver client, typically retrieved from plugins.service_client.service_client fixture. More...
 
class  pytest_userver.metrics.Metric
 Metric type that contains the labels: typing.Dict[str, str] and value: int. More...
 
class  pytest_userver.metrics.MetricsSnapshot
 Snapshot of captured metrics that mimics the dict interface. More...
 
class  pytest_userver.sql.RegisteredTrx
 RegisteredTrx maintains transaction fault injection state to test transaction failure code path. More...
 
class  pytest_userver.utils.net.HostPort
 Class that holds a host and port. More...
 
class  pytest_userver.utils.net.HealthChecks
 Class that holds all the info for health checks. More...
 

Functions

None pytest_userver.plugins.service_runner.test_service_default (service_client, service_baseurl, monitor_baseurl)
 This is default service runner testcase.
 
bool pytest_userver.utils.net.check_availability (HealthChecks checks)
 Checks availability for each provided entry.
 
HealthChecks pytest_userver.utils.net.get_health_checks_info (dict service_config)
 Returns a health checks info that for server.listener, grpc-server.port and server.listener-monitor.
 

Function Documentation

◆ check_availability()

bool pytest_userver.utils.net.check_availability ( HealthChecks checks)

Checks availability for each provided entry.

Definition at line 49 of file net.py.

◆ get_health_checks_info()

HealthChecks pytest_userver.utils.net.get_health_checks_info ( dict service_config)

Returns a health checks info that for server.listener, grpc-server.port and server.listener-monitor.

See also
pytest_userver.plugins.base.service_non_http_health_checks()

Definition at line 74 of file net.py.

◆ test_service_default()

None pytest_userver.plugins.service_runner.test_service_default ( service_client,
service_baseurl,
monitor_baseurl )

This is default service runner testcase.

Feel free to override it in your own tests, e.g.:

@pytest.mark.servicetest
def test_service(service_client):
...

Definition at line 55 of file service_runner.py.