Any 3 features of Spring Boot
Auto Configuration
Stand-alone
Opinionated
What part of CI/CD Pipeline does these co-relate to?
Releases new changes to one or more environments, including production. This means that on top of having automated testing, you can also have automated release process and you can deploy your application at any point in time by clicking on a button.
Continuous Delivery
It is also called "One Commit for One Change"
The smallest, most important improvement you can make in your source code. It is large enough to add value but tiny enough to be manageable
Atomic Commit
What is Two-Tier Test Automation Approach
First, run quick sanity checks on each commit to the source code in order to quickly validate changes. You can then run more extensive regression testing at night. This way, you can provide immediate feedback to developers while they are still focused on that portion of the code.
Name the Four Layers in Spring Boot Architecture
Name 3 Spring Framework projects?
Spring Data Project
Spring Cloud Project
Spring Security Project
Spring batch
Spring Social
Explain each Pipeline Stage
Build
Test
Release
Deploy
Validation and Compliance
Commit _______ and Commit _________
Commit Early, Commit Often
Your message will be clear and focused
Easy for other developers to understand the code History
If you do small commits, it allows you to use useful tools like "git-bisect" -> This cmd used Binary search algo to find which commit in your project's history introduced a Bug -> between good and bad commits.
Give any 5 best Software QA practices
Define a Process
Test Early and Test Often[Introducing the QA team early to a project gives them foresight to potential bugs and defects that they might face later down the road. It will end up saving the project both time and money as functionality is being implemented].
Test on Real devices
Automation [The QA team will want to use automation when the functionality is imperative and risk based. Having reusable regression automation testing allows us to ensure quality on parts of the project that have been seen before while also pointing out new complex issues for the QA team to solve.]
Be the Quality Advocate but don't own Quality
[quality is owned by every individual on the team, but QA should act as the guided voice]
Fill info about Spring Boot Goals
Opinionated
Annotation
import
XML
What is Boilerplate code?
Boilerplate code are the sections of the code that have to be included in many places without or with, little alterations. A considerable amount of code needs to be written by the programmer for minor functionality; this part of the code is called boilerplate.
Repetitive
Why to use?
What part of CI/CD Pipeline does these co-relate to?
Developers merge their changes back to the main branch as often as possible. The changes are validated by creating a Build and running automated tests against it
Continuous Integration
Call out any two Git Pull best practice
Do not delay in Pull request
Reduces code quality and raise Conflicts. Always good to review the pull request soon for any merge or to deploy.
For one concern, raise one pull req
Single or several Atomic commits but only for one Feature. If large, split into features to Tidy up
Complete your work before a Pull Request
Valuable Comments with Pull Request
Define Code Owners
Use Git Ignore Keeps Repo clean, ensures files that are not monitored by git remain untracked
Use Rebase Easy to Review, Commit hostory remains stacked up as an exact sequence
Use Diff Helps in understanding if it is appropriate release or merge; Understand what precisely then= new changes are
Use Git Stash save changes temporarily with right message
Tag your Release : You can mark unique release versions of the code.
Helps you to compare changes of different releases; Easy to rollback a release and update
Don't mix refractoring with a new feature Do not refractor and add a new feature in the same commit -> against git best practices -> Team productivity increases
Name 4 Attributes of a Best Quality Software
Maintainability
Efficiency
Dependability
Usability
Annotaion to enable caching by auto configuration
@EnableCaching
Six key Areas of Spring Framework
Spring Core
Spring Data Access
Spring AOP (Spring Aspect Oriented Programming)
Spring Testing
Spring Integration
What part of CI/CD Pipeline does these co-relate to?
Every change that passes all stages of your production pipeline is released to production. There is no human intervention, and only a failed test will prevent a new change to be deployed to production.
Continuous Development
Do not Commit these four from your branch
Generated files
Dependencies
Local Configuration Files
Broken code
What are you going to do if there is no Functional Spec or any documents related to the system and developer who wrote the code does not work in the company anymore, but you have a system and need to test?
In this case, you need to do the Exploratory Testing of the product. It is about exploring, finding out about the software, what it does, what it doesn’t do, what works and what doesn’t work.
In this testing, you will come to know about the system and its basic workflow. In Exploratory Testing, you can also discover ‘blocker’ bugs that are harmful to your system and therefore, protect your system from being crashed.
If you are a white box tester, the next step is to look for different module codes. By this, you will be able to analyze the test cases for different modules and their relations.
How to disable a specific Auto Configuration?
@SpringBootApplication(exclude = DataSourceAutoConfiguration.class)
OR
using environmental property
spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
Who/ what Company is the Founder of Spring Framework?
A. Baeldung
B. Pivotal Software
C. Rod Johnson
D. Palo Alto
Rod Johnson
Abbreviate SAST DAST
Static Analysis Security Testing
Dynamic Analysis Security Testing
What is GIT 'AFTER' Tech?
Increase Productivity by 80%
A - Atomic Commits
F - Frequent Commits
T - Test before you push your changes
E - Enforce Standards
R - Refractoring is not a new Feature
Integrate all tests with ________________ (one of the topics displayed here)
What Type of Testing can be Automated with CI/CD?
Different ways to Create SB application using Maven