The California Department of Justice (CalDOJ) redesigned its Automated Criminal History System (ACHS) and other Criminal Justice Information System (CJIS) applications. To make sure the redesigned systems met all requirements, thorough testing was needed.
Previous maintenance and enhancements made to ACHS and other CJIS applications were tested manually. Each testing effort was essentially a brand new testing project, with little re-use.
Due to the manual nature of the testing process, each effort required a large number of test staff to work overtime. Over the life of these systems, many millions of dollars were spent for testing.
CalDOJ wanted to move from manual testing to automated testing in order to ensure a repeatable and reliable testing process. Many mistakes were made due to the manual nature of the old testing process.
SolutionThe BCII Electronic System for Testing (BEST) application was developed by CloverLeaf to solve the problem of maintaining, executing, and evaluating results of test cases.
The secure web interface allows users to upload or enter test case data into test projects, run tests and evaluate test responses in real-time. It also reports on the current state of test projects and test case data sets.
User roles such as project tester, administrator, manager, technical support, etc. may be defined for each test project. Access to automated test features within a test project is granted or denied based on a user's role in that project. Users may have various levels of access to functionality across multiple projects.
Test case data many be created and edited manually or may be recorded in Excel spreadsheets using a defined layout and then uploaded into BEST using the Web interface.
One of the most time saving features of BEST is the automated results comparison. Once a test case has a baseline, the result of subsequent executions of that test case are programmatically compared against the baseline's results. Pass/Fail status for the test case is updated automatically.
Some test result differences are acceptable. Timestamps are a common example. Also, due to enhancements as part of the redesign, some differences are by design. The comparison feature allows for ignoring defined known and accepted differences, allowing testing staff to concentrate their efforts on reviewing failed tests rather than manually reviewing all results to determine pass/fail status.
During the testing, defect management, and re-testing stages of the software development life cycle, BEST test projects can be automatically called through a web service. The CJIS automated deployment process automatically calls the BEST web service to run regression tests. Test cases marked for regression testing are automatically run and their test results are compared to the baseline results. Pass/Fail status is automatically set.
Once the release test is complete, BEST generates a report that identifies any failed tests. The report is automatically sent via email to the appropriate testing staff.
Users may be assigned to individual database schemas in the environments they are testing. This provides each tester with their own "sandbox" and prevents conflicts in testing data and results during test execution.
Various needs were identified for automated population of test case data. One requirement was to support dynamic date values based on the current date plus or minus a variable amount of time. Another requirement was the ability to flag identified data sets to use particular data in a test result as test case data in a subsequent test case.
While BEST was originally developed to support the ACHS Redesign testing effort, CloverLeaf recognized that this automated testing process would be beneficial to CalDOJ for other CJIS application testing efforts. Since all CJIS applications used the same basic architecture and API, BEST was developed to support them all.
Since BEST greatly reduced the time for testing and analysis for ACHS, CalDOJ has used BEST for other CJIS application testing efforts including the California Sex and Arson Registry (CSAR), Wanted Persons (WPS), Automated Firearms (AFS), Stolen Vehicles (SVS/ABS), and Supervised Release File (SRF).
Redesigned ACHS - UAT
CloverLeaf's CLETS Gateway is used for queries and updates to various Criminal Justice Information System (CJIS) applications.