Commit graph

77 commits

Author SHA1 Message Date
Steve Armand
5d8117b9de Bug 1397852 - Enable flake8 linter on testing/xpcshell. r=ahal
MozReview-Commit-ID: CvZVXQPx8jF

--HG--
extra : rebase_source : 359f148397ef5584028e343080c6774407f74db6
2017-09-14 09:51:27 -04:00
Geoff Brown
e4e2fc78d1 Bug 1390599 - 1. Simplify argument passing in xpcshell test harness; r=jmaher
The complexity of the xpcshell test harness has grown over time. I am reluctant
to make it more complex without first trying to simplify it. Here I consolidate
some of the argument passing between functions in an attempt to simplify some
important interfaces. Changes are strictly structural and should result in no
change in behavior.
2017-08-15 09:06:16 -06:00
Geoff Brown
df122d5bfa Bug 1340584 - Remove devicemanagerSUT and references to sutagent; r=wlach
sutagent is no longer built or used; devicemanagerSUT is completely
unused. After this change, devicemanagerADB is the only implementation of
devicemanager, and test harness options like --dm_trans are eliminated.
2017-03-21 12:20:01 -06:00
Honza Bambas
7cc6c9c9ef Bug 1321026 - Have an argument to change the number of parallel tests when running xpcshelltests, r=ted 2017-03-06 05:39:00 +01:00
Sebastian Hengst
f614f1840d Backed out changeset a293a617ebed (bug 1321026) on suspicion of causing xpcshell bustage. r=backout on a CLOSED TREE 2017-03-06 23:35:17 +01:00
Honza Bambas
8c2fe09382 Bug 1321026 - Have an argument to change the number of parallel tests when running xpcshelltests. r=ted 2017-03-06 08:44:00 -05:00
Andrew Halberstadt
41caba1673 Bug 1316408 - Remove all b2g related code from testing/xpcshell, r=jmaher
MozReview-Commit-ID: KF5Pw5WBleX

--HG--
extra : rebase_source : 2c071bac76d26527337acc0b0593cd3c6202afc4
2016-11-09 14:50:45 -05:00
Ethan Glasser-Camp
42e00e2b35 Bug 1225781: Return exit status of tests, r=ahal
MozReview-Commit-ID: 75v381nyQbj

--HG--
extra : rebase_source : 13ff4194a9d5d0e710db256e6b63106c5a2f3681
2016-10-05 17:24:36 -04:00
Gregory Szorc
7fd974e58a Bug 1272851 - Use objdir for temporary directory for mach xpcshell-test; r=ted
When running xpcshell tests on my i7-6700K, the Windows Defender
MsMpEng.exe process regularly consumes up to 50% CPU - 2 whole cores.
This is because it is canning the thousands of files we create in the
temporary directory. (We create a profile for every xpcshell.exe process.)

This commit changes the behavior of `mach xpcshell-test` to use a temporary
directory under the topobjdir. We encourage people to disable file indexing
and A/V scanning in the source and object directories because this can add
overhead. So by putting temporary files in the object directory, we should
minimize the chances of file scanning slowing down test execution.

On my machine (which has Windows Defender disabled in my source and objdirs),
`mach xpcshell-test` execution time drops from ~13:40 to ~7:30. Seriously.

I'm told we have Windows Defender disabled in automation, so this hack
shouldn't need to be investigated there. i.e. this is a pure local development
win.



MozReview-Commit-ID: BMcSAZ16Yei

--HG--
extra : rebase_source : 5490be35b59ff675639180b928ee77dcc70de485
2016-05-26 11:56:20 -07:00
Chris Manchester
a7138cfc10 Bug 1242051 - Install test files to the objdir lazily rather than with each invocation of mach. r=gps
This moves test installation for test files out of the monolithic install
manifest for $objdir/_tests, and determines the test and support files
to install based on the object derived from all-tests.json. Additionally,
the files resulting from TEST_HARNESS_FILES are installed, as some tests
will depend on them.

As a result, the time to install tests when invoking the test runner will
scale with the number of tests requested to run rather than the entire set
of tests in the tree, resulting in significantly less overhead.

MozReview-Commit-ID: LeIrUVh1yD4
2016-04-04 14:56:52 -07:00
Geoff Brown
fe5b68bf76 Bug 1255563 - Set sequential option when running Android 'mach xpcshell-test'; r=jmaher 2016-03-10 15:18:40 -07:00
Edgar Chen
b7041c4fe1 Bug 1216507 - Use the correct busybox binary for x86 emulator. r=ahal
--HG--
extra : commitid : Ey1NBOsP7ux
extra : rebase_source : 6c0aecfedfc19b1af960a0333a2cd192edfd3273
extra : amend_source : 3e0973c5bc3cbf975c16e180ad06f5405a7ab1ef
2015-10-10 12:00:18 +08:00
Chris Manchester
6a45b54812 Bug 1209312 - Accept test_objects in testing/xpcshell/mach_commands.py to support |./mach test|. r=jgraham
--HG--
extra : commitid : 7hOvYy0xdzm
2015-09-29 12:59:55 -07:00
Andrew Halberstadt
422647ac94 Bug 1206073 - [xpcshell] Fix default value for testingModulesDir when running from mach, r=jgraham
--HG--
extra : commitid : KjVjUrw8IZ4
extra : rebase_source : 4ff826498fb3c303e873b8da760671577bd174b7
2015-09-18 10:00:40 -04:00
James Graham
e72c228cfc Bug 1193257 - Make xpcshell harness command line arguments path filters for tests, r=ahal 2015-09-17 10:51:02 +01:00
James Graham
39b6367572 Bug 1193224 - Remove vestigial --tests-root-dir option from xpcshell tests, r=ahal 2015-09-17 10:51:00 +01:00
Geoff Brown
9d0233b267 Bug 1202790 - Improve argument handling for android 'mach xpcshell-test'; r=chmanchester 2015-09-09 07:12:56 -06:00
Geoff Brown
2015a6ea72 Bug 1164596 - Add mach android-emulator command; r=ahal 2015-09-01 15:07:53 -06:00
Vaibhav Agrawal
7ec736a594 Bug 1197541 - Add --dump-tests option to mochitest and xpcshell for all tests that will be run. r=ahal 2015-08-21 17:16:11 -07:00
Julien Pagès
23e4c1d4a3 Bug 1091285 - move dumpScreen in a new mozscreenshot package. r=jgriffin
This also completely remove build/automationutils.py.

--HG--
extra : commitid : 50v6EAQNEHV
extra : rebase_source : 4ac1347d73498f068979514c6afb16ac50ab4033
2015-07-29 17:50:16 +02:00
Gregory Szorc
4b8238e9dc Bug 1176642 - Defer import of urllib2; r=chmanchester
This prevents 8 module imports from occurring at mach startup time.

As part of this, I discovered a redundant import of "sys" and eliminated
it.

--HG--
extra : commitid : AsZJHdCVbV0
extra : rebase_source : 53b1d5912ba85c7d363d9da21329a6fa65a2bce2
2015-06-25 12:12:15 -07:00
Gregory Szorc
3e949ee8fe Bug 1176642 - Use absolute_import in mach_commands.py files; r=glandium
This removes ambiguity as to which modules are being imported, making
import slightly faster as Python doesn't need to test so many
directories for file presence.

All files should already be using absolute imports because mach command
modules aren't imported to the package they belong to: they instead
belong to the "mach" package. So relative imports shouldn't have been
used.

--HG--
extra : commitid : 6tFME1KKfTD
extra : rebase_source : 78728f82f5487281620e00c2a8004cd5e1968087
2015-06-21 17:39:09 -07:00
Chris Manchester
ba2b70542e Bug 487494 - Pipe xpcshell's output through a stack fixer.;r=ted
--HG--
extra : commitid : CqKC3uLqzB
2015-06-11 11:21:13 -07:00
James Graham
43a3f73c63 Bug 1171849 Let consumers override mozlog default formatter options, r=chmanchester 2015-06-05 17:48:06 +01:00
Chris Manchester
17cb2cc298 Bug 1160164 - Run "all the tests" when invoking xpcshell's mach command with no arguments instead of passing "all" to the test resolver.;r=ahal DONTBUILD 2015-04-30 11:30:10 -07:00
Andrew Halberstadt
056bddce11 Bug 987360 - Add ability to tag tests with arbitrary strings and run them, r=chmanchester
Add a `tags` attribute to a test or DEFAULT section in a manifest:

[test_foo]
tags = foo

Then run all tests with a given tag by passing in `--tag foo` to a supported test harness. So far mochitest, xpcshell and marionette are supported.

--HG--
extra : rebase_source : d75905da1ca021a15a9538117d3866425f73d962
extra : source : 3c34fd480729e3b6684fba747ff61078f672ce16
2015-03-19 16:15:33 -04:00
Ryan VanderMeulen
378481f17f Backed out changesets acbab9e22691 and 3c34fd480729 (bug 987360) for Android/B2G xpcshell bustage.
CLOSED TREE

--HG--
extra : rebase_source : d79b1dcfb12ae8e12efefd7d15b8a2f9f5063377
2015-03-27 13:12:19 -04:00
Andrew Halberstadt
e3068d1b6f Bug 987360 - Add ability to tag tests with arbitrary strings and run them, r=chmanchester
Add a `tags` attribute to a test or DEFAULT section in a manifest:

[test_foo]
tags = foo

Then run all tests with a given tag by passing in `--tag foo` to a supported test harness. So far mochitest, xpcshell and marionette are supported.

--HG--
extra : rebase_source : 68a0931c6a8ee1df4f5c09d67c396490774aa856
2015-03-19 16:15:33 -04:00
Szu-Yu Chen [:aknow]
42fbfc7d74 Bug 1133649 - Add an always true condition for xpcshell-test. r=gps 2015-03-05 18:00:23 +08:00
Joshua Cranmer
4f74dc4614 Bug 934170: Make mach xpcshell-test work for comm-central, r=ted
--HG--
extra : rebase_source : d5ce19f18108c598aaa0a519e73a268f1dba91b5
2015-01-30 09:54:00 -06:00
Geoff Brown
506fb1c3fd Bug 1119583 - Use Droid instead of devicemanager for xpcshell mach; r=ahal 2015-01-12 14:33:43 -07:00
Mark Hammond
6aaa535030 Bug 809561 - Integrate xpcshell test harness with chrome remote debugging. r=past/chmanchester 2014-11-29 10:40:58 +11:00
Chris Manchester
08900914f0 Bug 1033126 - Convert xpcshell tests to use mozlog.structured format for logging.;r=ted 2014-10-22 15:53:42 -04:00
Marco Bonardo
44bca121f1 Bug 969633 - xpcshell reruns "tests that failed when run in parallel" when only a single test was executed, r=gps 2014-10-07 16:30:30 +02:00
Andrew Halberstadt
d292ee73f1 Bug 1066735 - Remove root b2g and android specific xpcshell manifests, r=chmanchester 2014-10-07 18:18:28 -04:00
Alessio Placitelli
a7b1ef77b3 Bug 928397 - Enable xpcshell-test debugging on Windows platforms and default debugger detection. r=ted.mielczarek 2014-07-02 13:52:00 +02:00
Chris Manchester
d2519c2968 Bug 1056952 - Expose xpcshell's verbose option to xpcshell's mach_commands.py. r=ahal 2014-08-21 16:34:55 -04:00
Sylvestre Ledru
2e0c1ce1ec Bug 1050715 - Update the description of the various tests targed proposed by './mach help' r=jmaher
--HG--
extra : rebase_source : 29019a02711ffce5c148787517051855259b6446
2014-08-09 15:37:29 +02:00
Alessio Placitelli
788bd0a30d Bug 1028090 - Enable xpcshell-test debugging on Windows platforms. r=jmaher 2014-07-28 12:04:00 -04:00
Ting-Yu Lin
dea8ddcd04 Bug 982560 - Fix mach fails to find tests in subdirectory. r=gps
Make the test paths relative to topsrcdir before passing them to
TestResolver. Also do not passing cwd to TestResolver since it will
filter out tests that do not live under the directory where the mach
command is executed.

Verification steps:
Execute a mach test command from any subdirectory. For example:
$ cd testing/tps/
$ ../../mach xpcshell-test ../../services/fxaccounts/tests/xpcshell/
$ ../../mach test ../../services/fxaccounts/tests/xpcshell/
2014-07-01 23:21:00 +02:00
Wes Kocher
387f8bb39f Merge m-c to fx-team 2014-06-19 18:33:19 -07:00
Gregory Szorc
8c93fc6df0 Bug 920193 - mach xpcshell-test can now receive test objects; r=AutomatedTester
A subsequent patch will have another mach command dispatch into
`xpcshell-test`. To avoid redundant resolution of test paths, we now
support passing resolved test objects into the mach command.

--HG--
extra : rebase_source : 1eb0e7b1ef1e45ca163ddb152d1bbb7b6b4d02e6
2014-06-18 11:17:50 -07:00
Andrew Halberstadt
e60605718c Bug 997244 - Move emulator.py out of marionette and into mozrunner, r=wlach,mdas,jgriffin 2014-06-19 14:17:26 -04:00
Vicamo Yang
d97ffaef80 Bug 996443: carry emulator arch automatically for mach commands. r=ahal 2014-05-01 00:57:39 +08:00
Gregory Szorc
4ff214391e Bug 987414 - Pass multiple test arguments to mach testing commands; r=ahal
Previously, mach xpcshell-test and mochitest-* were limited to a single
test "path" argument. This patch enables multiple arguments to be passed
in.

TestResolver in the build system has gained the ability to process
multiple paths in a single invocation. The mach commands have been
modified to utilize this new feature.

Only mach code paths that pass manifestdestiny.TestManifest instances
into the test runner can accept multiple arguments. This is because
there is no other way to pass a custom set of tests into the test
runner. If multiple test arguments are used but not supported, a warning
is emitted.

--HG--
extra : rebase_source : 1ce1328a969f654e7b43a7a0bdd15ed86f5ceb21
2014-03-24 16:19:57 -07:00
Andrew Halberstadt
2dbabf42ff Bug 932362 - Create mach target for running b2g xpcshell tests, r=jgriffin 2014-03-11 10:08:25 -04:00
Gregory Szorc
5aa0cf26c0 Bug 970302 - Ensure a TestManifest is always used when running xpcshell tests; r=ted
--HG--
extra : rebase_source : 30a296e66d25d5e4759b2ad3a420f94a5543a090
extra : amend_source : ac405c60d907f1bae3f376aa4525d8f93f53cc18
2014-02-10 13:11:23 -08:00
Gregory Szorc
28dfc8126d Bug 852959 - Remove old code paths for running xpcshell tests from directories; r=ted
Manifests are now the mechanism used to specify how to run xpcshell
tests. This patch removes old code paths that allowed directories to be
specified.

runxpcshelltests.py still contains references to "testdirs." These
should likely be removed as well. This patch doesn't touch them out of
fear it may have consequences on automation.

--HG--
extra : rebase_source : 8cbfe6dc759dc0a311669c4fcba08ff7a60edc4a
extra : amend_source : 890377d9ba33d52c84e0736b0812231f3005b253
2014-01-27 10:14:09 -08:00
Mark Hammond
244df00095 Bug 968581 - enable xpcshell verbose log output if only 1 test is in the manifest. r=gps
--HG--
extra : rebase_source : b521c42f3eca5dc8742b1689b4ec89edc1012d03
2014-02-06 13:51:00 +11:00
Gregory Szorc
8e84c8c50c Bug 920849 - Part 2: Discover xpcshell tests through metadata, not filesystem; r=ted
--HG--
extra : rebase_source : bbe52abe704072c11a3313d356ceedb2d0d31b6b
2013-10-22 16:54:40 -07:00