harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Harmony Wiki] Update of "DRLVMInternalTests" by GregoryShimansky
Date Fri, 18 Apr 2008 12:51:24 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Harmony Wiki" for change notification.

The following page has been changed by GregoryShimansky:
http://wiki.apache.org/harmony/DRLVMInternalTests

------------------------------------------------------------------------------
- = DRLVM Regression Tests =
+ = DRLVM Internal Tests =
  [wiki:Self:DRLVMTestTracking Back to DRLVM Test Tracking]
  
  [[Anchor(Summary)]]
  === Summary ===
  
  [#Status Status] [[BR]]
- [#Build Building Regression tests] [[BR]]
+ [#Build Building DRLVM tests] [[BR]]
- [#Run Running Regression tests]
+ [#Run Running DRLVM tests]
+  1. [#run-smoke Running Smoke tests]
+  2. [#run-cunit Running C-Unit tests]
+  3. [#run-kernel Running Kernel tests]
+  4. [#run-unit Running Unit tests]
  
+ [#Summary Back to Summary]
  [[Anchor(Status)]]
  === Status ===
  
- ''Regression tests'' consist of tests written to test conditions found by specific VM bugs.
So each test has a bug number in its package name.
+ ''DRLVM tests'' consist in ''Smoke'', ''C-unit'', ''Kernel'' and ''Unit'' tests. All ''DRLVM
tests'' are DRLVM acceptance tests so they must be run each time the contributor posts his/her
patch for DRLVM. '''It is strictly recommended''' to test your patch with ''DRLVM tests''
in both ''debug'' and ''release'' build of DRLVM on Windows/Linux/x86/x86_64 platforms.
  
+ ''Smoke'' tests are set of java-language programs with standard 'main' entrance which test
different DRL VM subsystems like exceptions, GC, Threading and etc.. There are about 80 separate
tests. The source of smoke tests are in …/working_vm/vm/tests/smoke directory.
+ 
+ ''C-unit'' tests are set of C-language tests which validate Thread Manager component. ''C-unit''
tests are dynamically linked with `hythr` to test its functionality directly without creating
full Java context. To test Java functionality of Thread Manager ''C-unit'' tests can be also
linked with `harmonyvm` library and create Java environment through invocation API. There
are 80+ tests in this suite.
+ 
+ ''Kernel'' tests are set of java-language programs with standard 'main' entance which test
DRLVM ''Kernel Classes'' such as `java.lang.Class`, `java.lang.Thread` or features such as
Java5.0 ''Generics''. There are 660+ tests in this suite.
+ 
+ ''Unit'' tests are ...
+ 
- ''Regression tests'' located in directories three started from `trunk/working_vm/src/test/regression/tests`.
+ ''DRLVM tests'' located in directories three started from `trunk/working_vm/tests`.
  
  [#Summary Back to Summary]
  [[Anchor(Build)]]
- === Building Regression tests ===
+ === Building DRLVM tests ===
  
- To build ''Regression tests'' you need just to run them in any configuration. Even running
one test case compiles all the tests in the suite.
+ To build ''DRLVM tests'' you need just to run them in any configuration. For example, to
be ''Kernel'' tests you may execute the following:
+ {{{
+ cd trunk/working_vm
+ ant -Dhy.cfg=release -Dtest.mode=jet kernel.test
+ }}}
  
  [#Summary Back to Summary]
  [[Anchor(Run)]]
- === Running Regression tests ===
+ === Running DRLVM tests ===
  
+ There are common rules of running all of the ''DRLVM'' tests.
- All ''Regression tests'' run with
- {{{
- ant reg.test
- }}}
- command.
  
- There are common rules of running all of the ''Regression tests''.
- 
- You can set binary configuration through a command line option or an environment variable:
+ You can set binary configuration thought a command line option or an environment variable:
  {{{
  -Dhy.cfg=[release|debug]
  export BUILD_CFG=[release|debug]
  }}}
  By default 'debug' mode is set.
  
- Each regression test has its own specific run file which contains the modes for test execution.
For example some tests run in server mode or server_static mode. So specifying -Dtest.mode
like in other VM test suites makes no effect.
+ You may specify a run mode which is helpful while working on particular issue, for example:
+ {{{
+ -Dtest.mode=srv
+ }}}
  
  Also you can specify a given test to be run, for example:
  {{{
- –Dtest.case=H1578
+ –Dtest.case=java.lang.ThreadTest
  }}}
  
  The known point is that if you what to run the test from direct command without ant adaptors,
then get execution command from ant debug output, for example with the following command:
  {{{
- ant -d reg.test
+ ant -d kernel.test
  }}}
  
  [#Summary Back to Summary]
+ [[Anchor(run-smoke)]]
+ === 1. Running Smoke tests ===
+ To run all ''Smoke'' tests in all supported modes just execute from `working_vm` directory:
+ {{{
+ ant smoke.test
+ }}}
+ 
+ You may see the results of run at directory like:
+ {{{
+ build/windows_x86_msvc_release/tests/smoke.tests/reports
+ }}}
+ 
+ [#Summary Back to Summary]
+ [[Anchor(run-cunit)]]
+ === 2. Running C-unit tests ===
+ 
+ To run all ''C-unit'' tests in default mode need to execute from working_vm directory:
+ {{{
+ ant cunit.test
+ }}}
+ 
+ You can see test execution results at directory like:
+ {{{
+ working_vm/build/windows_x86_msvc_release/tests/cunit.tests/reports
+ }}}
+ 
+ [#Summary Back to Summary]
+ [[Anchor(run-kernel)]]
+ === 3. Running Kernel tests ===
+ 
+ To run all ''Kernel'' tests in all supported modes just execute from `working_vm` directory:
+ {{{
+ ant kernel.test
+ }}}
+ 
+ You may see the results of run at directory like:
+ {{{
+ build/windows_x86_msvc_release/tests/kernel.tests/reports
+ }}}
+ 
+ [#Summary Back to Summary]
+ [[Anchor(run-unit)]]
+ === 4. Running Unit tests ===
+ 
+ [#Summary Back to Summary]
+ 
  [wiki:Self:DRLVMTestTracking Back to DRLVM Test Tracking]
  

Mime
View raw message