Compare Revisions

Writing xpcshell-based unit tests

Change Revisions

Revision 21589:

Revision 21589 by Nickolay on

Revision 21590:

Revision 21590 by Mnyromyr on

Title:
Writing xpcshell-based unit tests
Writing xpcshell-based unit tests
Slug:
Writing_xpcshell-based_unit_tests
Writing_xpcshell-based_unit_tests
Tags:
"Automated testing", "Developing Mozilla"
"Automated testing", "Developing Mozilla"
Content:

Revision 21589
Revision 21590
n30      This doesn't really test anything, but it gives you an idean30      This doesn't really test anything, but it gives you an idea
> how you'd actually write a test. If you want to execute the test> how you'd actually write a test. If you want to execute the test
>, you must create a non-static build of the browser without <code>, you must create a non-static build of the browser without <code
>>--disable-tests</code>. Add the test file to an existing set of >>--disable-tests</code>. Add the test file to an existing set of 
>tests (say, for example, {{template.Source("tools/test-harness/xp>tests (say, for example, {{ Source("tools/test-harness/xpcshell-s
>cshell-simple/example/unit/")}}, but you'll want a different loca>imple/example/unit/") }}, but you'll want a different location wh
>tion when your test is posted for a review). You then execute you>en your test is posted for a review). You then execute your test 
>r test using <code>make check</code>:>using <code>make check</code>:
n56      {{template.Fx_minversion_inline(3)}} <b>Note:</b>n56      {{ Fx_minversion_inline("3") }} <b>Note:</b>
n58        You can now specify <code>check-one</code> instead of <con58        You can now specify <code>check-one</code> instead of <co
>de>check</code> on the command line to launch a single test ({{te>de>check</code> on the command line to launch a single test ({{ B
>mplate.Bug(404513)}}).>ug("404513") }}).
n191      You can specify <code>check-interactive</code> when issuingn191      You can specify <code>check-interactive</code> when issuing
> the <code>make</code> command. This will cause your test to stop> the <code>make</code> command. This will cause your test to stop
> right before running so you can attach to it in a debugger (impl> right before running so you can attach to it in a debugger (impl
>emented in {{template.Bug(382682)}}).>emented in {{ Bug("382682") }}).
tt203    <p>
204      <i>Note: For comm-central builds (only?), the path passed t
 >o -C, giving the relative path from the base <b>source</b> direct
 >ory to the test directory, must not contain the final /unit/ subd
 >irectory, even if the actual SOLO_FILE is stored there!</i>
205    </p>
206    <pre class="eval">
207$ ls -la uriloader/exthandler/tests/unit/test_punycodeURIs.js
208$ make SOLO_FILE="test_punycodeURIs.js" -C uriloader/exthandler/t
 >ests check-interactive
209</pre>

Back to History