A test script in Salesforce has two
parts - Tests and Incidents, which can be best managed with Google
Spreadsheets. The tests define which
process is being tested, the steps to be followed, expected result vs the
actual results, the overall result and the incident number in case the test
script fails. When a test script fails, an incident is created in the Incidents
Tab. It includes the incident no., step no., the description of the actual
result compared to the expected result, the cause for the failure and its
potential fix. Once the fix has been made, the test script is re-executed. It
is appended as a new row in the google spreadsheet. If the test fails again, it
is again logged into the Incidents tab and the process repeats itself until the
test passes. For a test script to pass, all the steps of the test should be
executed as it is expected.
- Purpose of testing
- To check the functionality of the
configuration and the code.
- To ensure that the agreed upon requirements
are met by the system's initial build.
- To help control the actual scope of the
project.
- To confirm that the business process of the
client can be supported by the developed system.
- To gain approval for releasing new
functionality.
- Types of Testing
Unit
Testing: This test is performed by the Apex
developers. This process involves writing clauses or conditions in the code
that tests its coverage automatically. It tests the threshold limit of the unit
code in a given environment. To deploy the Apex code into production, a 78%
test coverage is required.
System
Testing: This test is performed by the salesforce
consultants. It thoroughly checks the technical processes of the system. It is
performed by executing a test script based on specific outputs.
Functional
Testing: This is tested by the users of the
application. It tests the ability of the system to support the business
processes. This test is intended to achieve the client's confirmation on the
system.
Production
Testing: This is system test, re-executed in the
production environment. It checks if the configuration and the code files have
been successfully transferred to the
production environment from the sandbox environment. Also, the User
Acceptance Testing is also performed in full
scale in the production environment.
Regression
Testing
This testing can also be referred to as
impact testing by the client. This tests if the newly deployed codes and configurations
affect the existing processes of the system in any way. Many releases of the project may not
be intended for all the users. Hence, this test ensures that the process of the
users, for whom the new processes have not been made accessible, remain unaffected.
Conclusion:



