Thursday 15 August 2019

Guidelines for Testing

Below are few guidelines which can be followed by testing team while working in a CI-CD environment. 



Jenkins :

  • Any tests which run on the latest version of the code should be scheduled to be triggered from the latest dev checkin.
  • Any tests which run against the QA environment should be triggered based on a schedule
  • Tests should be set up to run on our single server .
  • Once you have added your test to jenkins, don't ignore it. Keep an eye on it. If a build has suddenly turned red, either raise a bug or if it is failing due to compilation error / other reason work to fix the test. 
  • All builds must have a ReportNG report linked on the front page

 


SVN :
  • Rather than updating one file at a time, make sure that you update the full project in order to avoid missing files or changes
  • Likewise don't commit one file at a time as small changes in other classes / config files can be easily missed
  • After you have checked in, check the related builds in Jenkins for any compile errors or new test failures - even if it has run ok locally, other peoples checkins might interfere



Writing test cases in Java :

  • Ensure that all tests are given a meaningful name, that makes it clear what is being tested in a method. E.g. noNullPrices() rather than testPrices()
  • Use TestNG rather than JUnit
  • camelCase() for method names and variables
  • no underscores _
  • Method and class names should be descriptive.
  • Avoid relying on System.out.println. This fills up logs. If a test has passed, this will never be looked at. If at test has failed, it is better to create a report and link to it from jenkins.
  • Every test must be added to a testsuite which is scheduled in jenkins. A test which is not running is useless!
  • If you have any code which is reusable, add it to the CommonFramework - e.g. reading files
  • NEVER comment out someone else's code - if it causes you compile errors, check with team
  • Avoid commenting lines out. Just remove them. SVN gives us the ability to retrieve old versions.

2 comments:

Spring boot with CORS

CORS (Cross-Origin Resource Sharing) errors occur when a web application running in a browser requests a resource from a different domain or...