Meego Wiki
Views

Quality/TestSuite/MeeGo Graphics Test Plan

From MeeGo wiki
< Quality | TestSuite
Revision as of 05:02, 8 December 2010 by Zhengkui (Talk | contribs)
Jump to: navigation, search

Contents

MeeGo Graphics Test Plan

Component Summary

The graphics subsystem is composed of Xserver, Mesa, 2D driver (e.g. Xf86-video-intel) and Drm. It should provide the latest graphics h/w features, as well as meet requirement of UI framework (e.g. Clutter, Qt), Window Manager even applications.

Feature to be Tested

What features to be tested are made of basic features + accepted features of MeeGO-1.1/MeeGo-1.2.

Table.1 Basic features

FEA ID Feature summary Feature description and Test points Platform Priority
n/a X11 * Xserver should work well with Mesa, 2D driver and other components.
* Many X extensions should be supported, including Xrender, Xcomposite, Xdamage, Xrandr adn so on.
ALL Major
n/a OpenGL ES 2.0 Should support OpenGL ES 2.0 ALL Major
n/a OpenVG hould support OpenVG ALL Major
n/a Display * Should support Single/Multi display
* Mode setting
* Rotation setting
ALL Major
n/aInput Should support proper event for input devices (i.e. multi-touch) in X ALL Major
n/a Video Should support XVideo and libVA ALL n/a

Table.1 MeeGo-1.1

FEA ID Feature summary Feature description and Test points Platform Priority
4877 [FEA] Provide libOpenVG and libOpenVGU packages OpenVG is supported ALL Major

Table.2 MeeGo-1.2

FEA ID Feature summary Test points Platform Priority
7614 [FEA] Multiple output (HDMI) support from Graphics and Window manager HDMI output is supported by graphics driver; Multiple display is supported by Window Manager HDMI platform Major

Feature not to be Tested

Bluez tests do not cover Drivers and Low Level BT Profiles

Summary Detail scenario Support Reasons
BT driver No BT driver for platform NO Use hciconfig to try to find info of the Blue device.
We do not support Hardware driver missing.
BT driver HAL error NO Use hciconfig to try to find info of the Blue device.
We do not check other hardware error happening during bluetoothd starting process.
Low Level BT Profile RFCOMM NO The RFCOMM profile is on L2CAP, works for serial connection. We do not test RFCOMM especially
Low Level BT Profile L2CAP NO The L2CAP profile can be used by many Up-level profiles (such as FTP, OPP...). We do not test L2CAP especially

Test Strategy and Approach

Test is focused on Bluez user level profiles. Main goal is to ensure bluez stack can work well to comminucate with outside hardwares to implement different usages. All the commonly used BT profiles should be tested on different platforms either by GUI or by terminal commands.
For those low level profiles or Bluetooth drivers on platforms, there is no cover.

Test Methodology:

Bluez library provides many tools to do hardware BT connection. For example:
Nearly all the bluetooth test needs the first step: Bluetooth pairing. This can be done by simple-agent in bluez-test RPM.
BT Keyboard and BT mouse connection uses HID profile, which could be done by HID daemon. hidd --connect <Keyboard MAC> and hidd --search can help to connect keyboard and mouse.
For the profiles through OBEX, we write python scripts to call OBEX server APIs to transfer data.
For PANU, we setup a unbutu10.04 machine as BNEP server. PAN user could link to the BNEP after pairing with the ubuntu machine. When PANU needs log on to internet, the BNEP server will do ipforwarding from the bnap0 to eth0 (eth0 is connecting to outside).

Test Types:

Although the test points are classified by each profiles, we also do negative, performance and even stress test to the test points.

  • Positive test must pass
  • If the system has GUI (such as gnome-bluetooth-meego), some tests are validated through GUI following user experience.
  • Negative and stress test will be especially run for FTP, for example:
    • Transfer the file to wrong target, or target memory is full
    • Transfer multiple files with small-size each
    • Transfer one big files with hundreds of MB
  • Performance Test will also be cared when doing FTP test, file transfer speed should be mor than 10K. Or we will treat BT connection not stable.

Test level:

Current test level is API level. All cases are based on middleware usage, no dependency on how GUI is like.

Flexibility:

Nokia shares some test cases calling bluez-libs API in C language. Although those cases are not in our test strategy, we still try to use bluez-libs to enlarge our profile test scope if possible.

Test Automation

We will keep one PC as server machine for auto test, so automated cases are the profiles which can be used between two computers. Based on this strategy, we currently made FTP/OPP/PANU profiles test cases automated.
There is no low level profiles automated by us. Nokia share some codes in MWTS and BLTS to test RFCOMM and L2CAP profiles. But unfortunately, all their cases are semi-automatic in fact.
The test framework to run our auto cases is MCTS. Those cases are written by shell scripts, some utility tools (called by cases) are made by python. Before case running, a OBEXD-Server machine must be setup there and wait for obexd-client call. Detail information can be refered from the README file in MCTS:Bluez component. Git repository is http://gitorious.org/qa-tools/mcts

Test Design

Test points are written in Tested Feature Tables.
Test method is introduced in Test Strategy and Approach section.

Test Environment

Nearly all the bluez test cases need at least two devices. One is testing machine, the other may be some BT integrated device.
There are still some scripts needed for profile checking, since we do not depend on GUI APP.

Hardware Platforms

Test Platforms Networking Other Devices Priority
Pinetrail Netbook: Acer NAV50 LAN, Wifi, BT BT headset (Dell DH200), BT Keyboard (Dell)... P1
Diamondville Netbook: EeePC 1005 HA LAN, Wifi, BT BT headset (Dell DH200), BT Keyboard (Dell)... P2
Handset: Avaa USB, BT-dongle (BT2.0+EDR) BT headset (Dell DH200), BT Keyboard (Dell)... P1

Tools

Some python scripts are used to check FTP/OPP/PBAP... functions in middleware (without GUI). They are from:

  • bluez source code: bluez/test/simple-agent --- For bluetooth pairing
  • bluez source code: bluez/test/test-network --- For PANU connection setup with BNEP (PAN Server)
  • obexd source code: obexd-0.32/test/ftp-client --- For FTP send/get/browse checking

QA Contact

jingke.zhang@intel.com
zhaojuan.guo@intel.com (intern)

Developers

majid.awad@intel.com
qiang.z.zhang@intel.com

Referrences

BT Profile introduction: http://en.wikipedia.org/wiki/Bluetooth_profile
Bluez source and tool downloading: http://www.bluez.org
BIG offical webpage: http://www.bluetooth.org

Personal tools