VirtualBox

source: vbox/trunk/src/VBox/ValidationKit/docs/VBoxValidationKitReadMe.txt@ 52776

最後變更 在這個檔案從52776是 52776,由 vboxsync 提交於 11 年 前

fix OSE

  • 屬性 svn:eol-style 設為 native
  • 屬性 svn:keywords 設為 Author Date Id Revision
檔案大小: 4.9 KB
 
1
2The VirtualBox Validation Kit
3=============================
4
5
6Introduction
7------------
8
9The VirtualBox Validation Kit is our new public tool for doing automated
10testing of VirtualBox. We are continually working on adding new features
11and guest operating systems to our battery of tests.
12
13We warmly welcome contributions, new ideas for good tests and fixes.
14
15Directory Layout
16----------------
17
18./docs/
19 The documentation for the test suite mostly lives here, the exception being
20 readme.txt files that are better off living near what they concern.
21
22 For a definition of terms used here, see the Definitions / Glossary section
23 of ./docs/AutomaticTestingRevamp.txt / ./docs/AutomaticTestingRevamp.html.
24
25./testdriver/
26 Python module implementing the base test drivers and supporting stuff.
27 The base test driver implementation is found in ./testdriver/base.py while
28 the VBox centric specialization is in ./testdriver/vbox.py. Various VBox
29 API wrappers that makes things easier to use and glosses over a lot of API
30 version differences that live in ./testdriver/vboxwrappers.py.
31
32 Test VM collections are often managed thru ./testdriver/vboxtestvms.py, but
33 doesn't necessarily have to be, it's up to the individual test driver.
34
35 For logging, reporting result, uploading useful files and such we have a
36 reporter singleton sub-package, ./testdriver/reporter.py. It implements
37 both local (for local testing) and remote (for testboxes + test manager)
38 reporting.
39
40 There is also a VBoxTXS client implementation in txsclient.py and a stacked
41 test driver for installing VBox (vboxinstaller.py). Most test drivers will
42 use the TXS client indirectly thru vbox.py methods. The installer driver
43 is a special trick for the testbox+testmanager setup.
44
45./tests/
46 The python scripts driving the tests. These are organized by what they
47 test and are all derived from the base classes in ./testdriver (mostly from
48 vbox.py of course). Most tests use one or more VMs from a standard set of
49 preconfigured VMs defined by ./testdriver/vboxtestvms.py (mentioned above),
50 though the installation tests used prepared ISOs and floppy images.
51
52./vms/
53 Text documents describing the preconfigured test VMs defined by
54 ./testdrive/vboxtestvms.py. This will also contain description of how to
55 prepare installation ISOs when we get around to it (soon).
56
57./utils/
58 Test utilities and lower level test programs, compiled from C, C++ and
59 Assembly mostly. Generally available for both host and guest, i.e. in the
60 zip and on the VBoxValidationKit.iso respectively.
61
62 The Test eXecution Service (VBoxTXS) found in ./utils/TestExecServ is one
63 of the more important utilities. It implements a remote execution service
64 for running programs/tests inside VMs and on other test boxes. See
65 ./utils/TestExecServ/vboxtxs-readme.txt for more details.
66
67 A simple network bandwidth and latency test program can be found in
68 ./utils/network/NetPerf.cpp.
69
70./bootsectors/
71 Boot sector test environment. This allows creating floppy images in
72 assembly that tests specific CPU or device behaviour. Most tests can be
73 put on a USB stick, floppy or similar and booted up on real hardware for
74 comparison. All floppy images can be used for manual testing by developers
75 and most will be used by test drivers (./tests/*/td*.py) sooner or later.
76
77 The boot sector environment is heavily bound to yasm and it's ability to
78 link binary images for single assembly input units. There is a "library"
79 of standard initialization code and runtime code, which include switch to
80 all (well V8086 mode is still missing, but we'll get that done eventually)
81 processor modes and paging modes. The image specific code is split into
82 init/driver code and test template, the latter can be instantiated for each
83 process execution+paging mode.
84
85./common/
86 Python package containing common python code.
87
88./testboxscript/
89 The testbox script. This is installed on testboxes used for automatic
90 testing with the testmanager.
91
92./testmanager/
93 The VirtualBox Test Manager (server side code). This is written in Python
94 and currently uses postgresql as database backend for no particular reason
95 other than that it was already installed on the server the test manager was
96 going to run on. It's relatively generic, though there are of course
97 things in there that are of more use when testing VirtualBox than other
98 things. A more detailed account (though perhaps a little dated) of the
99 test manager can be found in ./docs/AutomaticTestingRevamp.txt and
100 ./docs/AutomaticTestingRevamp.html.
101
102./testanalysis/
103 A start a local test result analysis, comparing network test output. We'll
104 probably be picking this up again later.
105
106./snippets/
107 Various code snippets that may be turned into real tests at some point.
108
109
110
111:Status: $Id: VBoxValidationKitReadMe.txt 52776 2014-09-17 14:51:43Z vboxsync $
112:Copyright: Copyright (C) 2010-2014 Oracle Corporation.
113
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette