Release Package QA Test Plan

Environments

General QA Guidelines

QA Tests


Configurations

Distribution configurations to test

Test configuration

Test each of the distribution configurations.

Testing Tasks

The infusion-all.js and infusion-custom.js configurations should be tested with modified release bundles that have individual dependencies replaced with a reference to the single concatenated JavaScript file. (See Release Process - Tag, Package and Test the Release for more information on how to create these bundles)

Unit Test

________________________________________________________

Protocol
Navigate to the following html file and execute all of the unit tests.

Run all unit tests by launching the html files from the following location


Ad-hoc Tests

Description
Improvised tests for quickly discovering critical issues, and uncovering ones that may be outside of formalized testing.

Protocol
Attempt to use the tool in various situations, using your imagination and freedom to explore the interface and interactions. Can use the other test types as a guide.

All test plans:
Testing Fluid Components


Ideas for future Testing of the Release Package


<table border=1px, solid>
	        <tr>
	            <th>Method</th>
                <th>Pros</th>
                <th>Cons</th>
            </tr>
            <tr>
                <td>Manually change all dependencies to InfusionAll.js</td>
                <td>
                    <ul>
                        <li>Manually ensure that all files have dependencies changed</li>
                        <li>Doesn't require any additional files or new samples be developed</li>
                    </ul>
                </td>
                <td>
                    <ul>
                        <li>Error prone</li>
                        <li>Time consuming (40 files * 2 packages = 80 places to change)</li>
                    </ul>
                </td>
            </tr>
            <tr>
                <td>Minimal set of sample pages that we manually change (e.g. mock-ups)</td>
                <td>
                    <ul>
                        <li>Will reduce the time and error</li>
                        <li>Will provide examples of fluid components working together on a single page</li>
                    </ul>
                </td>
                <td>
                    <ul>
                        <li>May clutter the example page</li>
                        <li>Still have the risk of error wehn manually change the dependencies</li>
                    </ul>
                </td>
            </tr>
            <tr>
                <td>Automated process to modify the dependencies on each page</td>
                <td>
                    <ul>
                        <li>Will eliminate most of the risk of error</li>
                        <li>Fast</li>
                    </ul>
                </td>
                <td>
                    <ul>
                        <li>Will have to be executed on the test system instead of the final bundle being posted</li>
                        <li>Introduces another layer, which may be a source of errors</li>
                    </ul>
                </td>
            </tr>
            <tr>
                <td>The build process builds 4 different bundles, 2 using InfusionAll.js and 2 that don't</td>
                <td>
                    <ul>
                        <li>Part of the bundling process</li>
                        <li>Fast</li>
                        <li>Should elminate the risk of most errors</li>
                    </ul>
                </td>
                <td>
                    <ul>
                        <li>Will build additional bundles that will likely only be used for testing.</li>
                        <li>InfusionAll.js in the bundles posted, haven't really been tested</li>
                    </ul>
                </td>
            </tr>
            <tr>
                <td>Minimal set of test files that actually link to InfusionAll.js in the repository</td>
                <td>
                    <ul>
                        <li>Can test InfusionAll.js from the build site if needed</li>
                        <li>No risk of error</li>
                    </ul>
                </td>
                <td>
                    <ul>
                        <li>Overhead to maintain and update</li>
                        <li>Developers would require InfusionAll.js on their system in order for these examples to work</li>
                    </ul>
                </td>
            </tr>
	    </table>