Schoolserver Testing

From OLPC
Jump to navigation Jump to search
  english | español HowTo [ID# 189247]  +/-  

These are the tests performed to validate proper operation of the XS School server software.

Quick Sanity Check

These tests quickly verify that a number of systems are functioning.

Internet Connection

This quickly checks the basic mesh connectivity, domain name system, and mesh to internet IP routing.

These actions should be repeated on all mesh channels.

Setup:

  1. Setup a school server with three Active Antennas.

Actions:

  1. Using an XO laptop, associate with one mesh channel. The mesh channel used by a laptop can be selected by clicking on a mesh channel in the neighborhood view.
  2. Hover over the filled in circle in the Home View. You should see "Connected to a School Mesh Portal".
  3. Launch the Web Browser Activity
  4. Navigate to http://www.laptop.org/

Verify:

  1. Verify that the page loads.

Library Quick Check

still waiting for a workable content bundle for recent joyride builds? --Chihyu 18:19, 7 January 2008 (EST)

Connectivity

The School server provides basic network connectivity to laptops connected to a school mesh. If you are having problems with connectivity, see School server network debugging.

Basic Mesh Connectivity

This test verifies that laptops on a school mesh are provided with basic connectivity to the schoolserver, over the wireless mesh network. Already partially performed as part of the quick sanity check.

These actions should be repeated on each of the three mesh channels.

Setup:

  1. Setup a school server with three Active Antennas.

Actions:

  1. Using an XO laptop, associate with one mesh channel. The mesh channel used by a laptop can be selected by clicking on a mesh channel in the neighborhood view.

Verify:

  1. Switch to a text terminal
  2. Verify that an IP address has been assigned by typing ifconfig msh0_rename. The address assigned should be in the range 172.18.16.0 to 172.18.63.255. (should be msh0 instead of msh0_rename, but this bug will be fixed in the future --Chihyu 17:57, 8 January 2008 (EST))
  3. Verify that the laptop can communicate with the school server using ping:
ping 172.18.0.1

Domain Name System

This test verifies that laptops on a school mesh can properly resolve DNS names. Already performed as part of the quick sanity check.

Setup:

  1. Setup a school server with one to three active antennas. The school server should be connected to the Internet through its WAN connection.

Actions:

  1. Associate a laptop with a mesh channel.

Verify:

  1. Switch to a text terminal
  2. Verify that DNS has been configured properly by checking /etc/resolv.conf to see that a DNS server has been assigned. It should look like (the actual domain listed after search may be different):
; generated by /sbin/dhclient-script
search random.xs.laptop.org
nameserver 172.16.0.1
  1. Check that DNS on the schoolserver is operating properly using ping (additional service names defined in School Service Names should also be tested):
ping schoolserver
ping school
ping www
ping time
ping presence
  1. Finally, check that DNS properly resolves non-local names:
ping wiki.laptop.org

IP Routing

Mesh to Internet

This test verifies that laptops on a school mesh can properly route packets to/from the internet. Already performed as part of the quick sanity check.

the test procedures are the same as #Internet Connection. --Chihyu 18:25, 8 January 2008 (EST)

Setup:

  1. Setup a school server with one to three active antennas. The school server should be connected to the Internet through its WAN connection.

Actions:

  1. Associate a laptop with a mesh channel.
  2. Launch a web browser. Navigate to wiki.laptop.org.

Verify:

  1. Make sure that the wiki is displayed.

Mesh to Mesh

This test verifies that laptops can communicate with other laptops on the school mesh.

Setup:

  1. Setup a school server with two or three active antennas.
  2. Associate one XO laptop with one mesh channel. Associate another XO laptop with a different mesh channel. The mesh channel used by a laptop can be selected by clicking on a mesh channel in the neighborhood view. (does each laptop have to be registered to the corresponding school server mesh? --Chihyu 18:28, 8 January 2008 (EST)

Actions:

  1. Determine the IP addresses of the two laptops by opening a Terminal and using ifconfig eth0. For the following instructions, assume the IP addresses are AA.AA.AA.AA and BB.BB.BB.BB.
  2. From the laptop with IP address AA.AA.AA.AA, use ping BB.BB.BB.BB to test connectivity.
  3. From the laptop with IP address BB.BB.BB.BB, use ping AA.AA.AA.AA to test connectivity.

Verify:

  1. Both pings should succeed, with no more than one or two packets lost.

Large File Transfer

This test verifies that large file transfers are working properly.

Setup:

  1. Setup a school server with one or more active antennas. The school server should be connected to the Internet through its WAN connection.

Actions:

  1. Associate a laptop with the school mesh.
  2. Fetch a large file from a remote server, using wget:
wget -N http://xs-dev.laptop.org/xs/OLPC_XS_LATEST.iso

Verify:

  1. The transfer should succeed.

Surprisingly, this test failed with most early versions of the WLAN firmware and driver!

Web Caching

This test verifies that the transparent HTTP proxy and cache is working properly.

Setup:

  1. Setup a school server with one or more active antennas. The school server should be connected to the Internet through its WAN connection.

Actions:

  1. Associate two laptops with the school mesh.
  2. Fetch a large file from a remote server, using wget:
wget -N http://xs-dev.laptop.org/wad/test1MB_1.bin
  1. Fetch the same file again using the same laptop.
  2. Fetch the same file using the second laptop.

Verify:

  1. The time required to fetch the file should be drastically reduced the second time it was fetched on the same laptop.
  2. The time required to fetch the file on the second laptop should be comparable to the second time it was fetched on the first laptop.

This is a rather simplistic test of the HTTP caching function, and should be updated.

Services

Laptop Upgrade

From Sugar

From Open Firmware

Laptop Activation

Laptop Registration

This is a test for proper operation of the School Identity Manager on the School Server.

Setup:

  1. Setup a school server with one or more active antennas. Internet connection is optional.
  2. Take a freshly flashed (w. copy-nand) or cleared (by deleting .sugar/default/config) laptop, boot it, and give it a nickname.

Actions:

  1. Associate the laptop with the school server mesh.
  2. Go to the Home Screen and select the "Register" menu item from the menu obtained by hovering over the XO figure.

Verify:

  1. After associating with the school server mesh, hovering over the circle on the Home Screen should say "Connected to a School Mesh Portal".
  2. After registering the laptop, it should no longer be available as a menu item when hovering over the XO figure on the Home Screen.
  3. On the school server named as the backup server in /home/olpc/.sugar/default/config, an account for the laptop (the serial number is the account name) should be created, with a home directory in /library/users/. You should also be able to see the account when running /home/idmgr/list_registration.

Undoing: A laptop may have its registration partially cleared either by re-flashing the internal storage or by deleting the /home/olpc/.sugar/default/config file. This will not remove the account from the school server, but will allow this test to be performed again.

Collaboration

This is a test of the presence server integrated into a school server. It is frequently combined with the previous test (Laptop Registration)

Setup:

  1. Setup a school server with one or more active antennas. Internet connection is optional.
  2. Take two freshly flashed (w. copy-nand) or cleared (by deleting .sugar/default/config) laptops, boot them, and give them nicknames.
  3. Associate the laptops with the school server mesh.

Actions:

  1. On both laptops, go to the Home Screen and select the "Register" menu item from the menu obtained by hovering over the XO figure.
  2. Reboot both laptops (due to Trac ticket #?).
  3. After checking that you are on the school mesh, verify operation

Verify:

  1. After associating with the school server mesh, hovering over the circle on the Home Screen should say "Connected to a School Mesh Portal".
  2. After registering the laptop, it should no longer be available as a menu item when hovering over the XO figure on the Home Screen.
  3. After rebooting the laptop the second time, go to the Neighborhood Screen and look around. You should only see other laptops that are connected to the school presence server (registered with the school).

And ? We need some actual test of collaboration that uses jabber

Laptop Backup and Restore

Library

Schoolserver Software

These test relate to the installation, upgrade, and backup of the schoolserver itself, not the laptops connected to a school wireless mesh.

Schoolserver Installation

This test verifies that a school server software release installs properly. As the hardware platforms supported by the school server software vary, this test is really intended for an already certified platform (right now we define "certified" as a platform on which Fedora 7 installs...)

Setup:

  1. Prepare a USB key or CD installer using these instructions.

Be aware that this test completely overwrites the disk on the machine used for testing !!

Actions:

  1. Install the school server software, using these instructions
  2. Reboot the server

Verify:

  1. No errors which halt the installation process should occur.
  2. If the school server has one or more Active Antenna, after installation it should pass the tests defined in the previous sections.

Please note that to properly test the server software, multiple platform configuration should be tested. For example, servers which contain one and two wired network interface (with and without a wired LAN interface) should be tested.

Schoolserver Upgrade

This test verifies that a school server properly upgrades itself.

Setup:

  1. Setup a school server using an earlier release of the school server software (such as build 128). This school server must have an Internet connection.

Actions:

  1. Log into the school server as root
  2. Type:
yum upgrade

Verify:

  1. No errors which halt the upgrade process should occur.
  2. If the school server has one or more Active Antenna, after upgrade it should pass the tests defined in the previous sections.

Schoolserver Backup and Restore

This is not supported by current build of the school server software