CloudServices/Sync/FxSync/Crossweave2: Difference between revisions

m
 
(6 intermediate revisions by 4 users not shown)
Line 2: Line 2:


* JavaScript-ability
* JavaScript-ability
* improved error reporting (more finegrained, helpful, etc.)
* Improved error reporting (more finegrained, helpful, etc.)
* be a stable test suite across upcoming refactorings (War On Sync)
* Be a stable test suite across upcoming refactorings (War On Sync)
* provide reliable perf measurements (track regressions, etc.)
* Provide reliable perf measurements (track regressions, etc.)
* Better coverage of functionality: reset sync; handling of erroneous server conditions, migrations, etc.; handling of client consistency risks such as unexpected shutdowns…


= Plan for Crossweave / TPS 2.0 =
= Plan for Crossweave / TPS 2.0 =


* Rename to '''Test harness and Profiler for Sync''' (TPS)
* Rename to '''Test harness and Profiler for Sync''' (TPS)
* New docs available at https://developer.mozilla.org/en/TPS


* Python
* Python
Line 16: Line 19:
** {{done|connect}} to [http://brasstacks.mozilla.com/autolog/ autolog]
** {{done|connect}} to [http://brasstacks.mozilla.com/autolog/ autolog]
** {{done|convert}} config and manifest file format to JSON
** {{done|convert}} config and manifest file format to JSON
** remove result reporting to the MySQL db on brasstacks
** {{done|remove}} result reporting to the MySQL db on brasstacks


* Harness
* Harness
Line 34: Line 37:
** memory usage (from <code>nsIMemoryReporterManager</code>)
** memory usage (from <code>nsIMemoryReporterManager</code>)
** GC operations (setting <code>javascript.options.mem.log</code> and grepping the error console for the corresponding log messages would already help; better even use build with <code>--enable-gctimer</code>)
** GC operations (setting <code>javascript.options.mem.log</code> and grepping the error console for the corresponding log messages would already help; better even use build with <code>--enable-gctimer</code>)
** GC + CC graphs: {{bug|680482}}, https://github.com/amccreight/heapgraph
** JITing (what's trace or method JITed and more importantly, what isn't? no instrumentation yet?!?)
** JITing (what's trace or method JITed and more importantly, what isn't? no instrumentation yet?!?)
** object allocations (no instrumentation yet?!?)
** object allocations (no instrumentation yet?!?)
Line 42: Line 46:
* support fuzz consistency tests
* support fuzz consistency tests
* more operations (restore from bookmarks to test wipe, for example)
* more operations (restore from bookmarks to test wipe, for example)
= QA desires =
* port mozmill API on top of TPS, so we can have tests against client side setup wizard work
* create headless TPS, and create javascript/python tests against XPShell
* support TPS against a fully integrated test staging server, with configurable settings (eg. disabling Captcha)
* Support for running on mobile?.  Start with porting and running against desktop fennec
canmove, Confirmed users
1,173

edits