Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

ReleaseEngineeringTestingServices Checklist.docxAbout Our Team

Release Engineering Testing Services
 

The Release Engineering team assists Project Managers, Business Analysts and developers in ensuring that MIT developed applications, Application Programming Interfaces and Software-as-a-Service offerings project teams in ensuring that IS&T services are production ready.  We offer API testingOur testing engineers build automated API tests, performance testing tests and regression testing, and can assist developers in using the Veracode platform for security testing.

 
API Testing

  • Objective: 
    • Validate that data updates are processed as expected, based on system requirements
    • Validate any business logic encoded in the API, based on system requirements
    • Validate that negative test cases have been adequately covered
       
  • Tools:
    • Python scripts
    • Gazoonta tester: Java application uses XML input to make JSON requests to a REST API and  SQL commands to database.
    • Integrate API tests with Travis to run API tests at build time.
       
  • When: 
    • Ideally, the API tests are written as the API becomes available in the Dev and Test environments

Performance Testing

  • Objective: 
    • Ensure average response times are consistent with product owner expectations.  
    • Create test scripts based on relevant user scenarios.
    • Calibrate load testing based on system requirements.
       
  • Tools: 
    • Blazemeter, JMeter, New Relic
       
  • When: 
    • Application is available in Test environment

Regression Testing

  • Objective:
    • Validate that set of defined use cases behave as expected
       
  • Tools:
    • Selenium WebDriver, Python, HP Unified Functional Testing (UFT)
       
  • When:
    • During requirements definition, so that system requirements can be written as test case scenarios.
    • We see highest Return On Investment when automated regression tests are written during application development.  Developers can use the scripts to test that new development does not have unintended consequences for existing code.
       
  • Consult with Release Engineering Team as to whether automated regression tests make sense for your project.  Factors to consider:
    • Are BA or product owner resources available to define test cases and validate that automated test scripts cover the needed functionality?
    • Ability to maintain a set of stable data against which to test or to seed data for the tests
    • Identification and maintenance of authorizations needed in order to run the automated tests
    • Are manual test scripts already available?  (not a hard requirement; consider re-using them if they exist)
    • Can we make a rough estimate of the benefits of automated regression tests?  Will the automated tests replace significant time spent on manual testing?  Will more efficient regression tests enable the development team to make more frequent releases for bug fixes and enhancement requests?

Security Testing

  • Objective:
    • Detect and mitigate security vulnerabilities within the application
       
  • Veracode:
    • Release Engineering team can facilitate your use of the Veracode security platform.  
    • Veracode enables developers to detect security vulnerabilities and receive suggestions for mitigation
    • IS&T is currently licensed for 50 apps per year.
    • For Java applications, upload the .war file for scanning by Veracode
    • For non-Java applications and APIs, consult with Veracode support team
       
  • When:
    • During development phase
    • For Java applications, Veracode can be integrated into Eclipse IDE

tests, as well as offering consultation regarding testing strategies. In working with project managers, business analysts and software engineers during the development and go-live phase of the project, the team gains familiarity with the application and/or service.  This enables Release Engineering to properly direct enhancement requests and problem reports after go-live.  Release Engineering team members:

  • Consult with project teams regarding testing strategies to ensure that IS&T deployed applications, Application Programming Interfaces (APIs), Software-as-a-Service (SaaS) and Platform-as-a-Service (PaaS) offerings are production ready.
  • Build API tests, performance tests and automated regression tests.
  • Triage problem reports and service requests for the Operations area, including Application Delivery, Cloud Platforms and the Integration team.
  • Partner with the Service Desk Escalations team in administering IS&T's Software-as-a-Service and Platform-as-a-Service offerings, such as DocuSign, LabArchives, LastPass, QuickBase and Qualtrics.

More about our Testing Services

Checklist: ReleaseEngineeringTestingServices Checklist.docx

Contact Us

Contact Information

Team email: release-engineering@mit.edu

Team manager: Lisa Robinson, lmrobin@mit.edu