Schoolserver Testing: Difference between revisions
(First dump) |
m (See also: XS Load Testing) |
||
(31 intermediate revisions by 8 users not shown) | |||
Line 1: | Line 1: | ||
{{translations}} |
|||
These are the tests performed to validate proper operation of the XS Schoolserver software. |
|||
[[Category:SchoolServer]] |
|||
[[Category:Testing]] |
|||
These are the tests performed to validate proper operation of the [[XS_Server_Software|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|basic mesh connectivity]], [[#Domain_Name_System|domain name system]], and [[#Mesh_to_Internet|mesh to internet IP routing]]. |
|||
These actions should be repeated on all mesh channels. |
|||
''Setup:'' |
|||
# Setup a school server with three [[Active Antenna|Active Antennas]]. |
|||
''Actions:'' |
|||
# 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. |
|||
# Hover over the filled in circle in the Home View. You should see "Connected to a School Mesh Portal". |
|||
# Launch the Web Browser Activity |
|||
# Navigate to http://www.laptop.org/ |
|||
''Verify:'' |
|||
# Verify that the page loads. |
|||
==Library Quick Check== |
|||
still waiting for a workable content bundle for recent joyride builds? --[[User:Chihyu|Chihyu]] 18:19, 7 January 2008 (EST) |
|||
=Connectivity= |
=Connectivity= |
||
The |
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== |
==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. |
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 [[#Internet_Connection|quick sanity check]]. |
||
These actions should be repeated on each of the three mesh |
These actions should be repeated on each of the three mesh channels. |
||
''Setup:'' |
''Setup:'' |
||
# Setup a school server with three |
# Setup a school server with three [[Active Antenna|Active Antennas]]. |
||
''Actions:'' |
''Actions:'' |
||
Line 19: | Line 49: | ||
''Verify:'' |
''Verify:'' |
||
# Switch to a text terminal |
# Switch to a text terminal |
||
# Verify that an IP address has been assigned by typing <tt>ifconfig |
# Verify that an IP address has been assigned by typing <tt>ifconfig msh0_rename</tt>. 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 --[[User:Chihyu|Chihyu]] 17:57, 8 January 2008 (EST)) |
||
# Verify that the laptop can communicate with the school server using ping: |
# Verify that the laptop can communicate with the school server using ping: |
||
ping 172.18.0.1 |
ping 172.18.0.1 |
||
Line 25: | Line 55: | ||
==Domain Name System== |
==Domain Name System== |
||
This test verifies that laptops on a school mesh can properly resolve DNS names. |
This test verifies that laptops on a school mesh can properly resolve DNS names. Already performed as part of the [[#Internet_Connection|quick sanity check]]. |
||
''Setup:'' |
''Setup:'' |
||
Line 39: | Line 69: | ||
search random.xs.laptop.org |
search random.xs.laptop.org |
||
nameserver 172.16.0.1 |
nameserver 172.16.0.1 |
||
# Check that DNS on the schoolserver is operating properly using ping: |
# 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 schoolserver |
||
ping school |
ping school |
||
Line 50: | Line 80: | ||
==IP Routing== |
==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 [[#Internet_Connection|quick sanity check]]. |
|||
the test procedures are the same as [[#Internet Connection]]. --[[User:Chihyu|Chihyu]] 18:25, 8 January 2008 (EST) |
|||
''Setup:'' |
|||
# Setup a school server with one to three active antennas. The school server should be connected to the Internet through its WAN connection. |
|||
''Actions:'' |
|||
# Associate a laptop with a mesh channel. |
|||
# Launch a web browser. Navigate to <tt>wiki.laptop.org</tt>. |
|||
''Verify:'' |
|||
# Make sure that the wiki is displayed. |
|||
===Mesh to Mesh=== |
===Mesh to Mesh=== |
||
This test verifies that laptops can communicate with other laptops on the school mesh. |
|||
''Setup:'' |
|||
# Setup a school server with two or three active antennas. |
|||
# 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? --[[User:Chihyu|Chihyu]] 18:28, 8 January 2008 (EST) |
|||
''Actions:'' |
|||
===Mesh to Internet=== |
|||
# Determine the IP addresses of the two laptops by opening a Terminal and using <tt>ifconfig eth0</tt>. For the following instructions, assume the IP addresses are AA.AA.AA.AA and BB.BB.BB.BB. |
|||
# From the laptop with IP address AA.AA.AA.AA, use <tt>ping BB.BB.BB.BB</tt> to test connectivity. |
|||
# From the laptop with IP address BB.BB.BB.BB, use <tt>ping AA.AA.AA.AA</tt> to test connectivity. |
|||
''Verify:'' |
|||
# 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:'' |
|||
# Setup a school server with one or more active antennas. The school server should be connected to the Internet through its WAN connection. |
|||
''Actions:'' |
|||
# Associate a laptop with the school mesh. |
|||
# Fetch a large file from a remote server, using <tt>wget</tt>: |
|||
wget -N http://xs-dev.laptop.org/xs/OLPC_XS_LATEST.iso |
|||
''Verify:'' |
|||
# The transfer should succeed. |
|||
''Surprisingly, this test failed with most early versions of the WLAN firmware and driver!'' |
|||
==Web Caching== |
==Web Caching== |
||
This test verifies that the transparent HTTP proxy and cache is working properly. |
|||
''Setup:'' |
|||
# Setup a school server with one or more active antennas. The school server should be connected to the Internet through its WAN connection. |
|||
''Actions:'' |
|||
# Associate two laptops with the school mesh. |
|||
# Fetch a large file from a remote server, using <tt>wget</tt>: |
|||
wget -N http://xs-dev.laptop.org/wad/test1MB_1.bin |
|||
# Fetch the same file again using the same laptop. |
|||
# Fetch the same file using the second laptop. |
|||
''Verify:'' |
|||
# The time required to fetch the file should be drastically reduced the second time it was fetched on the same laptop. |
|||
# 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= |
=Services= |
||
Line 74: | Line 161: | ||
==Laptop Registration== |
==Laptop Registration== |
||
This is a test for proper operation of the [[School Identity Manager]] on the School Server. |
|||
==Laptop Backup and Restore== |
|||
''Setup:'' |
|||
==Library== |
|||
# Setup a school server with one or more active antennas. Internet connection is optional. |
|||
# Take a freshly flashed (w. copy-nand) or cleared (by deleting <tt>.sugar/default/config</tt>) laptop, boot it, and give it a nickname. |
|||
'''NOTE''' In the newer versions, there is no config file under ~/.sugar/default/config, you will have to delete ~/.gconf/desktop |
|||
''Actions:'' |
|||
# Associate the laptop with the school server mesh. |
|||
# Go to the Home Screen and select the "Register" menu item from the menu obtained by hovering over the XO figure. |
|||
''Verify:'' |
|||
# After associating with the school server mesh, hovering over the circle on the Home Screen should say "Connected to a School Mesh Portal". |
|||
# After registering the laptop, it should no longer be available as a menu item when hovering over the XO figure on the Home Screen. |
|||
# On the school server named as the backup server in <tt>/home/olpc/.sugar/default/config</tt>, an account for the laptop (the serial number is the account name) should be created, with a home directory in <tt>/library/users/</tt>. You should also be able to see the account when running <tt>/home/idmgr/list_registration</tt>. |
|||
''Undoing:'' A laptop may have its registration partially cleared either by re-flashing the internal storage or by deleting the <tt>/home/olpc/.sugar/default/config</tt> file. This will not remove the account from the school server, but will allow this test to be performed again. |
|||
==Collaboration== |
==Collaboration== |
||
This is a test of the presence server integrated into a school server. It is frequently combined with the previous test ([[#Laptop_Registration|Laptop Registration]]) |
|||
''Setup:'' |
|||
# Setup a school server with one or more active antennas. Internet connection is optional. |
|||
# Take two freshly flashed (w. copy-nand) or cleared (by deleting <tt>.sugar/default/config</tt>) laptops, boot them, and give them nicknames. |
|||
# Associate the laptops with the school server mesh. |
|||
''Actions:'' |
|||
# On both laptops, go to the Home Screen and select the "Register" menu item from the menu obtained by hovering over the XO figure. |
|||
# Reboot both laptops (due to Trac ticket #?). |
|||
# After checking that you are on the school mesh, verify operation |
|||
''Verify:'' |
|||
# After associating with the school server mesh, hovering over the circle on the Home Screen should say "Connected to a School Mesh Portal". |
|||
# After registering the laptop, it should no longer be available as a menu item when hovering over the XO figure on the Home Screen. |
|||
# 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= |
=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== |
==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:'' |
|||
# Prepare a USB key or CD installer using [[XS_Installing_Software#Downloading_the_System_Image|these instructions]]. |
|||
''Be aware that this test completely overwrites the disk on the machine used for testing !!'' |
|||
''Actions:'' |
|||
# Install the school server software, using [[XS_Installing_Software#Installing_the_Software|these instructions]] |
|||
# Reboot the server |
|||
''Verify:'' |
|||
# No errors which halt the installation process should occur. |
|||
# 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== |
==Schoolserver Upgrade== |
||
This test verifies that a school server properly upgrades itself. |
|||
''Setup:'' |
|||
# Setup a school server using an earlier release of the school server software (such as [[XS_Installing_Software#OLPC_XS_128|build 128]]). This school server must have an Internet connection. |
|||
''Actions:'' |
|||
# Log into the school server as root |
|||
# Type: |
|||
yum upgrade |
|||
''Verify:'' |
|||
# No errors which halt the upgrade process should occur. |
|||
# 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== |
==Schoolserver Backup and Restore== |
||
''This is not supported by current build of the school server software'' |
|||
==See also== |
|||
* [[XS Load Testing]] |
Latest revision as of 22:47, 27 March 2011
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:
- Setup a school server with three Active Antennas.
Actions:
- 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.
- Hover over the filled in circle in the Home View. You should see "Connected to a School Mesh Portal".
- Launch the Web Browser Activity
- Navigate to http://www.laptop.org/
Verify:
- 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:
- Setup a school server with three Active Antennas.
Actions:
- 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:
- Switch to a text terminal
- 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))
- 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:
- Setup a school server with one to three active antennas. The school server should be connected to the Internet through its WAN connection.
Actions:
- Associate a laptop with a mesh channel.
Verify:
- Switch to a text terminal
- 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
- 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
- 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:
- Setup a school server with one to three active antennas. The school server should be connected to the Internet through its WAN connection.
Actions:
- Associate a laptop with a mesh channel.
- Launch a web browser. Navigate to wiki.laptop.org.
Verify:
- 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:
- Setup a school server with two or three active antennas.
- 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:
- 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.
- From the laptop with IP address AA.AA.AA.AA, use ping BB.BB.BB.BB to test connectivity.
- From the laptop with IP address BB.BB.BB.BB, use ping AA.AA.AA.AA to test connectivity.
Verify:
- 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:
- Setup a school server with one or more active antennas. The school server should be connected to the Internet through its WAN connection.
Actions:
- Associate a laptop with the school mesh.
- Fetch a large file from a remote server, using wget:
wget -N http://xs-dev.laptop.org/xs/OLPC_XS_LATEST.iso
Verify:
- 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:
- Setup a school server with one or more active antennas. The school server should be connected to the Internet through its WAN connection.
Actions:
- Associate two laptops with the school mesh.
- Fetch a large file from a remote server, using wget:
wget -N http://xs-dev.laptop.org/wad/test1MB_1.bin
- Fetch the same file again using the same laptop.
- Fetch the same file using the second laptop.
Verify:
- The time required to fetch the file should be drastically reduced the second time it was fetched on the same laptop.
- 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:
- Setup a school server with one or more active antennas. Internet connection is optional.
- Take a freshly flashed (w. copy-nand) or cleared (by deleting .sugar/default/config) laptop, boot it, and give it a nickname.
NOTE In the newer versions, there is no config file under ~/.sugar/default/config, you will have to delete ~/.gconf/desktop
Actions:
- Associate the laptop with the school server mesh.
- Go to the Home Screen and select the "Register" menu item from the menu obtained by hovering over the XO figure.
Verify:
- After associating with the school server mesh, hovering over the circle on the Home Screen should say "Connected to a School Mesh Portal".
- After registering the laptop, it should no longer be available as a menu item when hovering over the XO figure on the Home Screen.
- 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:
- Setup a school server with one or more active antennas. Internet connection is optional.
- Take two freshly flashed (w. copy-nand) or cleared (by deleting .sugar/default/config) laptops, boot them, and give them nicknames.
- Associate the laptops with the school server mesh.
Actions:
- On both laptops, go to the Home Screen and select the "Register" menu item from the menu obtained by hovering over the XO figure.
- Reboot both laptops (due to Trac ticket #?).
- After checking that you are on the school mesh, verify operation
Verify:
- After associating with the school server mesh, hovering over the circle on the Home Screen should say "Connected to a School Mesh Portal".
- After registering the laptop, it should no longer be available as a menu item when hovering over the XO figure on the Home Screen.
- 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:
- 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:
- Install the school server software, using these instructions
- Reboot the server
Verify:
- No errors which halt the installation process should occur.
- 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:
- 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:
- Log into the school server as root
- Type:
yum upgrade
Verify:
- No errors which halt the upgrade process should occur.
- 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