You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

The Release Engineering team assists project managers, business analysts and software engineers in ensuring that IS&T's deployed applications, Application Programming Interfaces and Software-as-a-Service offerings are production ready.  Our testing engineers build automated API tests, performance tests and regression tests, as well as offering consultation regarding testing strategies.  The Veracode platform is available to IS&T staff for security testing.  This checklist is intended to be a tool for project managers and business analysts as they move through the phases of software development projects and software-as-a-service and platform-as-a-service implementations.  Questions?  Email release-engineering@mit.edu. 

 

DateProject MilestoneTesting Activities
Week 1Project ABC approved for discovery Include testing resources as part of discovery project discussion
Week 1

Business Analyst works with product owner to document system requirements

 

System requirements definition:

  • System requirements that are captured as acceptance criteria can be used as test cases for functional testing 
Week 2

Project Manager creates project plan.

Include test planning as part of the project plan:

  • Meet with Release Engineering team manager to consider testing needs for the project
  • Decision regarding manual function testing vs. automated function testing. 
Week 4Developers begin coding application and any needed APIs

Unit function tests for application: Created by developer and/or executed manually by developer and/or BA.

Unit function tests for APIs. Created by developer. Consult with Release Engineering as needed. 

API Performance testing: Validate API performance in isolation from application.

Security testing: For Java applications, developer integrates Veracode into IDE in order to verify code does not have security vulnerabilities.

Continuous Integration: Utilize Travis to execute unit tests automatically for each application build.

Week 12

One application feature complete

API Unit tests: Release Engineering validates API unit tests

Systems Integration: Validate integration of application with APIs and other backend services 

Automated function tests: Begin coding automated function tests for test cases that have been validated by the product owner.

Week 20

Application available in Test environment

Performance Testing:

  • BA or product owner determines test cases and expected response times
  • Test environment scaled similarly to production in order to deliver valid test results
  • Load testing: Validate that average response times are consistent with product owner expectations.
  • Stress testing: Increase load incrementally to determine the point at which the application will fail to respond.

Systems Integration Testing (SIT):

  • Validate integration of application unit tests, API unit tests and other backend services

Automated Function Testing:

  • Validate that UI behaves as expected, based on a set of specified test cases.
  • BA validates automated regression tests and documents edge cases that will need manual testing.
Week 28Go-Live

Automated Function Testing (Regression Testing):

  • Automated regression tests are available to be run for all application builds, to ensure that code changes do not break existing application functionality.

Performance Testing:

  • Available to be re-run against Test environment as needed.

 

 

 

  • No labels