Update Network

Update Network #

client.updateNetwork((networkMode: string), (config: object));

networkMode - parameter specifies what network conditions should be used. Available network configurations and networkMode parameter values can be found here or they can be accessed using constants.

config(optional) - parameter that specifies exact network conditioner field values.

Custom network configuration is taken into effect only if provided networkMode is “custom”.

Currently available custom network configuration metrics are:

Network parameterTraffic directionJSON keyUnit of measureMin valueMax value
BandwidthOutgoingrate_upmbit0
Incomingrate_downmbit0
LatencyOutgoinglatency_upms0
Incominglatency_downms0
JitterOutgoingjitter_upms0
Incomingjitter_downms0
Packet lossOutgoingloss_up%0100
Incomingloss_down%0100
For custom network configuration jitter parameters must be defined together with latency. If jitter parameters are set without also defining latency parameters, then jitter configuration will not be applied.
The network parameters not defined in custom network configuration will be reset to their default values.
client => {
    // Example of updating network conditions
    client
        .url('https://www.bing.com')
        .waitForElementVisible('[type=search]', 10000)
        .updateNetwork(loaderoConstants.network.mobile_3g);
}
client => {
    // Example of updating network conditions using custom values
    let customNetworkConfig = {
        latency_up: 100,
        latency_down: 50,
        jitter_up: 20,
        jitter_down: 10,
        rate_up: 50,
        rate_down: 80,
        loss_up: 5,
        loss_down: 75,
    };

    client
        .url('https://www.bing.com')
        .waitForElementVisible('[type=search]', 10000)
        .updateNetwork(loaderoConstants.network.custom, customNetworkConfig);
}