DistroTesting
Tests that should be systematically done by Ubuntu Developers before uploading NetworkManager
Automated testing
- There are automated unit tests run during the build process of the network-manager package; should any of those tests fail, the package build will not succeed.
Automated autopkgtest tests are being run on a regular basis by the QA team. See NetworkManager AutoPkg Test. These tests may fail for a number of reasons; currently:
Need to update the test to use the dnsmasq dbus name as "org.freedesktop.NetworkManager.dnsmasq" rather than "uk.org.thekelleys.dnsmasq".
- Issues in apt-xapian-index polkit files cause failures due to messages in stderr when initializing polkit.
- Automated IPv6 tests are run by Stéphane Graber to identify issues with IPv6, single-stack and dual-stack setups, with radvd advertisements, DHCPv6, RDNSS, DNSSL.
Manual testing
This is essentially the same process as done by the NetworkManager developers upstream before doing a release; see the GNOME wiki on NetworkManager/SmokeTesting.
Above all, NetworkManager should be run locally for a minimum of one day; and if possible one full week before uploading. (Can be less than a week if the changes are minimal)
Basic smoke tests
Ensure connection to the following types of WiFi access points using a common wifi driver (like ath9k or iwlwifi)
- Open
- WEP
- WPA-PSK
- WPA-Enterprise with PEAP/MSCHAPv2 authentication (when available; should be tested regularly)
- Ensure that an "always ask" WPA Enterprise connection asks for the password each time
- Ensure that a DHCPv4 based wired connection works
- Ensure that a static IP wired connection works
- Ensure that the following work for an "automatic" wired IPv6-only connection (tested regularly):
- Where the RA does not include M or O options, NM obtains a global IPv6 address and a default route
- Same as above plus RDNSS (and DNSSL if you have kernel 3.5 or later)
- Where the RA includes the O (otherconf) option, NM runs DHCPv6 and correctly handles the returned options
- Where the RA includes the M (managed) option, NM runs DHCPv6 and correctly handles the returned options
- Ensure that at least one VPN plugin can successfully connect to the VPN server
- (-vpnc and -pptp are always tested by Mathieu Trudel (cyphermox))
- Ensure that when no network connections are defined, the wired interface receives a default "Wired connection 1" connection that successfully activates with DHCP
PPP Smoketesting
Ensure that the mobile devices in the test devices list can connect successfully and pass traffic. (cyphermox)
- Ensure that killing pppd with a SIGTERM causes the NM device to enter the FAILED state
Should add soon:
- Testing that Bluetooth DUN connections can be established.
Advanced WiFi Smoketesting
- (if possible) Ensure WPA-Enterprise connections survive multiple roaming attempts between APs in the same SSID
Test WEP, WPA, and open connections on a variety of drivers (ath5k, ath9k, iwlagn, rt2800, b43, bcma, orinoco, p54). See TestDeviceList for the devices available for regular testing. More drivers are tested in Canonical Certification labs when possible.
- Ensure that connecting to a new "hidden" SSID network works correctly when using the "Connect to hidden network..." applet option
- Ensure that if no CA certificate path is given that the security warning dialog shows and warns about missing CA certificate
Should be added (missing permanent infrastructure):
- Test other 802.1x authentication methods like TLS, TTLS, PAP, CHAP, GTC, etc
Advanced Wired Smoketesting
- Ensure connection fallback from a DHCP connection to a different static IP connection works when the network does not support DHCP
To be added (missing permanent infrastructure):
- Ensure a wired 802.1x connection works correctly using the MD5
Bluetooth Smoketesting
- Ensure that pairing a PAN capable phone works and creates a new NM connection
- Ensure that the new PAN connection connects and passes traffic
- Ensure that moving the phone out of range causes the NM device to enter the FAILED state for both DUN and PAN
Ensure that deleting a paired device from the bluetooth applet removes the phone's connection from NetworkManager too
To be added:
- Ensure that pairing a DUN capable phone works and creates a new NM connection (cyphermox doesn't have a DUN capable phone)
- Ensure that the new DUN connection connects and passes traffic