From Fedora Project Wiki

(remove test case ks script)
No edit summary
 
(16 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Step 1:Setup test enviroment and check system sanity==
== Test Environment ==
* Virtualization
* Virtualization
** python-fedora installed
** python-fedora installed
Line 13: Line 13:


* Interaction with Desktop
* Interaction with Desktop
** Linux Desktop Test Project (LDTP)
** Linux Desktop Test Project (LDTP)[[http://ldtp.freedesktop.org/wiki/]]
*** ldtp installed
*** ldtp installed
*** python-ldtp installed
*** python-ldtp installed
Line 22: Line 22:
** rsyslog listening on specific port on host
** rsyslog listening on specific port on host


== Step 2: Get test media and check media sanity==
== Watcher and Download Images ==
* Tree compose: http://download.fedoraproject.org/pub/fedora/linux/development/[$VERSION]/[$ARCH]/os/
* DVD, Live, boot.iso, netinst.iso: http://dl.fedoraproject.org/pub/alt/stage/
** Download by mirror
** Download by proxy (squid)


* Check Media Sanity
Identify potential test drivers that trigger off of events.
** size
** sha256sum
** md5sum
** repoclosure for DVD
** file conflict for DVD


== Step 3: Implement boot methods, repo locations, partitioning,user interface,boot loader==
* Source to watcher
The guest should be able to boot from URL, DVD.iso, Live.iso, boot.iso, netinst.iso, all these
** URL install source (typically, http://download.fedoraproject.org/pub/fedora/linux/development/15/i386/os)
guests should be able to accept different kick start files location, repo locations, partitions,
** DVD images (typically, http://dl.fedoraproject.org/pub/alt/stage/)
user interfaces and boot loaders.
** Live images (typically, http://dl.fedoraproject.org/pub/alt/stage/)
* kick start can be passed by virt-install arguments for tree compose or terminal for ISOs
** netinst.iso images (typically, http://dl.fedoraproject.org/pub/alt/stage/)
** remote kickstart files: http, ftp, nfs
** local kickstart files: ks file should be uploaded on to the virtdisk before using it


* repo
* Download Methods
** passed by terminal
To avoid multiple download for saving bandwidth and time, the following methods can be adopted:
** passed by ks file
** mirror
** proxy, such as squid


* partitioning
== Image Sanity ==
** passed by ks file
* size
* sha256sum
* md5sum
* repoclosure for DVD
* file conflict for DVD


* user interface
== Create Guest ==
** passed by terminal
* virt-install


* boot loader
== Boot Arguments ==
** passed by ks file
* Linux Desktop Test Project [[http://ldtp.freedesktop.org/wiki/]]


The mapping of test cases with kick start files can be found at  [[Testcase_Kickstart_Mapping]]
The mapping of test cases with kick start files can be found at  [[Testcase_Kickstart_Mapping]]


== Virtue Disk ==
* libguestfs


== Step 4: Creating Virt Guest==
== Logging ==
virt-install is adopted to initialize the guest. The functions to create guest with virt-install from url, DVD,ect. should be defined firstly.
* serial console
The following functions are defined in the class '''VirtGuest''' located in '''/lib/python/virtguest.py'''.
* [[Anaconda/Logging]]
{|
!Method!!Function
|-
|width=100|URL
|width= 200|url_create()
|-
|DVD,CD,boot.iso
|iso_create()
|}


 
== Watch Installation Steps ==
 
The installation steps can be watched by monitor the terminal output
Identify potential test drivers that trigger off of those events.
 
* URL install source available (typically, http://download.fedoraproject.org/pub/fedora/linux/development/15/i386/os)
** url_sanity.py (for provided {{filename|images/boot.iso}})
** url_install.py
** bootiso_install.py
** pxe_install.py (kind of silly, but a possible future test)
* DVD image(s) available (typically, somewhere on http://serverbeach1.fedoraproject.org/pub/alt/stage/)
** dvd_sanity.py
** dvd_install.py
** hddvc_install.py
** nfsdvc_install.py
* CD image(s) available (typically, somewhere on http://serverbeach1.fedoraproject.org/pub/alt/stage/)
** cd_sanity.py
** cd_install.py
** hdcd_install.py
** nfscd_install.py
 
==Step 5 : Logging and watching the steps of installation==
Get the installation output and logs at every step:
{|
! Stage !! Log file !! End label
|-
|width =100|Boot
|width=300|boot.log
|width=300|Greetings
|-
|Stage1
|stage1.log
|Running anaconda [version], system installer - please wait
|-
|Stage2
|stage2.log
|
|}
 
== Key ==
Set priorities for each test. The test drivers will support the tests with high priority.
 
{| class="wikitable sortable" border="0"
! Colour !! Explanation
|-
| style="background-color:green;"|yes
| supported and default (high priority)
|-
| style="background-color:#66FF00;"|yes
| supported (medium priority)
|-
| style="background-color:lightgreen;"|yes
| supported (low priority)
|-
| style="background-color:red; color:white;"|no
| unsupported configuration
|-
| style="background-color:yellow;"|unknown
| unknown
|-
|}


==References==
==References==
<references/>
<references/>

Latest revision as of 05:47, 21 November 2011

Test Environment

  • Virtualization
    • python-fedora installed
    • libvirt installed
    • qemu-kvm installed
    • python-virtinst installed
    • pax installed
    • service libvirtd started
  • Virtual disk (required for hd installation and ks hosted on hd)
    • libguestfs installed
    • python-libguestfs installed
  • Interaction with Desktop
    • Linux Desktop Test Project (LDTP)[[1]]
      • ldtp installed
      • python-ldtp installed
    • dogtail
  • Logging
    • service rsyslog started on host
    • rsyslog listening on specific port on host

Watcher and Download Images

Identify potential test drivers that trigger off of events.

  • Download Methods

To avoid multiple download for saving bandwidth and time, the following methods can be adopted:

    • mirror
    • proxy, such as squid

Image Sanity

  • size
  • sha256sum
  • md5sum
  • repoclosure for DVD
  • file conflict for DVD

Create Guest

  • virt-install

Boot Arguments

  • Linux Desktop Test Project [[2]]

The mapping of test cases with kick start files can be found at Testcase_Kickstart_Mapping

Virtue Disk

  • libguestfs

Logging

Watch Installation Steps

The installation steps can be watched by monitor the terminal output

References