userver: Testsuite Python support
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
Testsuite Python support

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

+ Collaboration diagram for Testsuite Python support:

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 waiting for first message and setting up sockets for forwarding messages between udp-client and udp-server. 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.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_yaml)
 Returns a health checks info that for server.listener, grpc-server.port and server.listener-monitor.
 

Detailed Description

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

Function Documentation

◆ check_availability()

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

Checks availability for each provided entry.

Definition at line 50 of file net.py.

◆ get_health_checks_info()

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

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 75 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 56 of file service_runner.py.