blob: 9a516e9ab887cfa4924b59d72758625de106b83e [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<org.eclipse.epf.uma:ArtifactDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.3/uma.ecore" epf:version="1.0.0" xmi:id="_NqSB0qeqEdmKDbQuyzCoqQ" name="developer_test,_0YuXEclgEdmt3adZL5Dmdw" guid="_NqSB0qeqEdmKDbQuyzCoqQ" changeDate="2006-12-21T12:11:53.042-0500" version="1.0.0">
<mainDescription>&lt;p&gt; This artifact covers all of
the steps that are required to validate
a software component. It specifies test entries,
execution conditions, and expected results. These details
are identified for the purpose of evaluating a
particular aspect of a scenario. &lt;/p&gt;
&lt;p&gt; The tests should be self-documenting in a way that
makes it clear upon completion of the test whether the component has
run correctly. &lt;/p&gt;</mainDescription>
<purpose>Evaluate that a software component performs as specified.</purpose>
<impactOfNotHaving>Not having developer tests can inhibit iterative development, because
there is no assurance that modified components are still working correctly
when you modify components iteration by iteration.</impactOfNotHaving>
<reasonsForNotNeeding>If the tests can be embedded into the actual production code, you might not need a separate work product. Nonetheless, some
level of support for developer testing is always necessary.</reasonsForNotNeeding>
<briefOutline>&lt;p&gt;
There is no predefined template for this&amp;nbsp;work product and a testing tool will&amp;nbsp;affect how the work product is
handled, but here are some key issues that should be addressed:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
Setup
&lt;/li&gt;
&lt;li&gt;
Inputs
&lt;/li&gt;
&lt;li&gt;
Script
&lt;/li&gt;
&lt;li&gt;
Expected Results
&lt;/li&gt;
&lt;li&gt;
Evaluation Criteria
&lt;/li&gt;
&lt;li&gt;
Clean-Up
&lt;/li&gt;
&lt;/ul&gt;</briefOutline>
<representationOptions>&lt;p align=&quot;left&quot;&gt;
The following are recommendation and options for representing this work product.
&lt;/p&gt;
&lt;h4&gt;
Recommendation: Automated Code Unit
&lt;/h4&gt;
&lt;p&gt;
The most appropriate technique for running these tests is using code that tests the components fully and that you can
run regularly as you update the system during development.
&lt;/p&gt;
&lt;p&gt;
When code is the&amp;nbsp;sole form of the tests, you must take care to ensure that the code is self-documenting, including
specifications of what conditions you are testing and what setup or clean-up is required for the test to run properly.
&lt;/p&gt;
&lt;h4&gt;
Option: Manual Instructions
&lt;/h4&gt;
&lt;p&gt;
In some cases, manual instructions can suffice. For example, when testing a user interface, a Developer could walk
through a script, explaining the component. In this case, it can still be valuable to create a test harness that goes
straight to the user interface. That way, the Developer can follow the script without having to walk through a
complicated set of instructions to get to a particular screen or page.
&lt;/p&gt;
&lt;h4&gt;
Option: Embedded Code
&lt;/h4&gt;
&lt;p&gt;
Certain technologies (such as Java&amp;trade; 5 Test Annotation) enable you to embed tests in the implementation. In those cases,
there will be a logical work product, but it will be assimilated into the code that you are testing. Here, too, take
into consideration that you must ensure that the code is self-documenting.
&lt;/p&gt;</representationOptions>
</org.eclipse.epf.uma:ArtifactDescription>