1
unit: packaging meta-data
6
category_id: 2013.com.canonical.plainbox::ethernet
9
4
device.category == 'NETWORK' or device.category == 'WIRELESS'
10
package.name == 'kmod' or package.name == 'module-init-tools'
5
package.name == 'module-init-tools'
11
6
package.name == 'pciutils'
12
7
command: network_device_info
13
8
estimated_duration: 1.2
15
Report info about available network devices
17
Test to detect and return information about available network controllers on
18
the system under test.
9
_description: Test to detect the available network controllers
21
category_id: 2013.com.canonical.plainbox::ethernet
22
12
id: ethernet/info_automated
24
executable.name == 'ip'
14
package.name == 'network-manager'
25
15
device.category == 'NETWORK'
26
command: udev_resource | filter_templates -w "category=NETWORK" | awk "/interface: / { print \$2 }" | xargs -n 1 network_info
16
command: udev_resource | filter_templates -w "category=NETWORK"| awk "/path: / { print \$2 }"| xargs -n 1 sh -c "for i in \`ls /sys\$0/net 2>/dev/null\`; do network_info \$i; done"
27
17
estimated_duration: 30.0
29
Gather info on current state of network devices
31
Gathers some info on the current state of your network devices. If no devices
32
are found, the test will exit with an error.
19
This is an automated test to gather some info on the current state of your network devices. If no devices are found, the test will exit with an error.
34
21
plugin: user-interact-verify
35
category_id: 2013.com.canonical.plainbox::ethernet
36
22
id: ethernet/wired_connection
37
23
command: network_check
38
24
estimated_duration: 1.2
47
33
Did a notification show and was the connection correctly established?
50
template-resource: device
51
template-filter: device.category == 'NETWORK'
53
category_id: 2013.com.canonical.plainbox::ethernet
54
id: ethernet/multi_nic_device{__index__}_{interface}
55
_summary: Multi-NIC Iperf stress testing for NIC {interface}
56
estimated_duration: 7400.0
58
package.name == 'iperf'
59
package.name == 'ethtool'
60
package.name == 'nmap'
62
environ: TEST_TARGET_IPERF
63
command: network test -i {interface} -t iperf --fail-threshold 80 --runtime 900 --num_runs 4
65
This test uses iperf to ensure network devices pass data at an acceptable
66
minimum percentage of advertized speed.
69
template-resource: device
70
template-filter: device.category == 'NETWORK'
72
category_id: 2013.com.canonical.plainbox::ethernet
73
id: ethernet/multi_iperf3_nic_device{__index__}_{interface}
74
_summary: Multi-NIC Iperf3 stress testing for NIC {interface}
75
estimated_duration: 7400.0
77
package.name == 'iperf3'
78
package.name == 'ethtool'
79
package.name == 'nmap'
81
environ: TEST_TARGET_IPERF
82
command: network test -i {interface} -t iperf --iperf3 --fail-threshold 80 --cpu-load-fail-threshold 90 --runtime 900 --num_runs 4
84
This test uses iperf3 to ensure network devices pass data at an acceptable
85
minimum percentage of advertized speed.
88
template-resource: device
89
template-filter: device.category == 'NETWORK'
91
category_id: 2013.com.canonical.plainbox::ethernet
92
id: ethernet/ethertool_check_device{__index__}_{interface}
93
_summary: ethtool check for NIC {interface}
94
estimated_duration: 330.0
96
package.name == 'ethtool'
97
command: ethtool {interface}
99
This test executes ethtool requests against ethernet device {__index__} ({interface}).
102
template-resource: device
103
template-filter: device.category == 'NETWORK'
104
plugin: user-interact-verify
105
category_id: 2013.com.canonical.plainbox::ethernet
106
id: ethernet/maximum_bandwidth_device{__index__}_{interface}
107
_summary: Maximum bandwidth test of device {__index__} ({interface})
108
estimated_duration: 330.0
36
_summary: Automated test to walk multiple network cards and test each one in sequence.
37
id: ethernet/multi_nic
38
requires: device.category == 'NETWORK'
39
_description: Automated test to walk multiple network cards and test each one in sequence.
41
cat <<'EOF' | run_templates -s 'udev_resource | filter_templates -w "category=NETWORK" | awk "/path: / { print \$2 }" | xargs -n 1 sh -c "for i in \`ls /sys\$0/net 2>/dev/null\`; do echo \$0 \$i; done"'
43
id: ethernet/multi_nic_$2
45
package.name == 'ethtool'
46
package.name == 'nmap'
49
environ: TEST_TARGET_FTP TEST_TARGET_IPERF TEST_USER TEST_PASS
50
command: network test -i $2 -t iperf --fail-threshold 80
51
estimated_duration: 330.0
57
id: ethernet/ethtool_info
59
device.category == 'NETWORK'
61
cat <<'EOF' | run_templates -s 'udev_resource | filter_templates -w "category=NETWORK" | awk "/path: / { print \$2 }" | xargs -n 1 sh -c "for i in \`ls /sys\$0/net 2>/dev/null\`; do echo \$0 \$i; done"'
63
id: ethernet/ethertool_check_$2
64
requires: device.path == "$1"
66
estimated_duration: 330.0
68
This test executes ethtool requests against all the ethernet devices found on the system.
71
This is an automated test to gather some info on the current state of your network devices. If no devices are found, the test will exit with an error.
74
id: ethernet/maximum_bandwidth
76
device.category == 'NETWORK'
110
77
package.name == 'zenity'
111
78
package.name == 'iperf'
113
environ: TEST_TARGET_IPERF
114
command: network test -i {interface} -t iperf 2>&1 | cat - <(echo; echo "Verify the result and click OK to decide on the outcome") | zenity --text-info --title 'ethernet max bw {interface}'
116
User verification of whether the observed transfer throughput is acceptable
117
for the type and maximum speed of each ethernet interface.
120
2. Read the network test summary and confirm that the throughput is acceptable.
121
3. If needed, click "Test" again to repeat the transfer test.
123
Was the reported throughput acceptable for the type and maximum speed of this interface?
80
cat <<'EOF' | run_templates -s 'udev_resource | filter_templates -w "category=NETWORK" | awk "/path: / { print \$2 }" | xargs -n 1 sh -c "for i in \`ls /sys\$0/net 2>/dev/null\`; do echo \$0 \$i; done"'
83
id: ethernet/maximum_bandwidth_$2
84
requires: device.path == "$1"
85
command: network test -i $2 -t iperf 2>&1 | cat - <(echo; echo "Verify the result and click OK to decide on the outcome") | zenity --text-info --title 'ethernet max bw $2'
86
estimated_duration: 330.0
89
User verification of whether the observed transfer throughput is acceptable
90
for the type and maximum speed of each ethernet interface.
92
1. Read the network test summary and confirm that the throughput is acceptable.
93
2. If needed, click "Test" again to repeat the transfer test.
95
Was the reported throughput acceptable for the type and maximum speed of this interface?
98
This test executes a maximum throughput test against all the ethernet devices found on the system.
126
template-resource: device
127
template-filter: device.category == 'NETWORK'
129
category_id: 2013.com.canonical.plainbox::ethernet
130
id: ethernet/stress_performance_device{__index__}_{interface}
131
_summary: Stress and performance test of ethernet device {__index__} ({interface})
132
estimated_duration: 330.0
101
_summary: Automated test that tests performance of each wired network device under stress.
102
id: ethernet/stress_performance
134
package.name == 'ethtool'
135
command: network test -i {interface} -t stress
137
Automated test that tests performance of ethernet device {__index__} ({interface}).
104
device.category == 'NETWORK'
105
_description: Automated test that tests performance of each wired network device under stress.
107
cat <<'EOF' | run_templates -s 'udev_resource | filter_templates -w "category=NETWORK" | awk "/path: / { print \$2 }" | xargs -n 1 sh -c "for i in \`ls /sys\$0/net 2>/dev/null\`; do echo \$0 \$i; done"'
109
id: ethernet/stress_performance_$2
110
requires: device.path == "$1"
112
command: network test -i $2 -t stress
113
estimated_duration: 330.0
115
This test executes iperf to generate a load on the network device and then performs a ping test to watch for dropped packets and very large latency periods.