What is Cucumber dependency injection in Selenium Projects?

You would notice Cucumber Selenium project has step definitions and hooks classes. Cucumber options glueing these step definitions and hooks to generate class instances using dependency injections before each Scenario

What is dependency injection?
Dependency injection is a design pattern where an object or function can receive other object or function.
In java you would notice constructor injection and setter injection. Spring projects are example using dependency

What’s QA Architect and what are the responsibilities

WHAT’S QA ARCHITECT AND WHAT ARE THE RESPONSIBILITIES

QA Architect role for a team or organization is critical for success. QA Architect roles can be following based on the what the team’s immediate needs and objectives,

  1. Could be a thinker to bring innovations especially for a matured agile team.
  2. Could be a trainer for a team which is not so matured with technology. QA Architect would help accelerate automation delivery here.
  3. Could be leader who gives technical direction and build strategy in selecting right tools , techniques and technologies
  4. A short term problem solver or a facilitator for long term process improvement.

Apart from Web and API automation skills, QA Architect must need to have following skills and technology knowledge,

  1. Experience in any of the cloud Techonologies like AWS, Azure or any similar one in market. Please refer AWS articles
  2. Experience in DevOps toolchain, please refer
    1. Jenkins, Jenkins pipeline creation, Jenkinsfile maintenance etc,
    2. Dockerfile creation, maintenance, container review, debugging knowledge
    3. Ansible, AWX console usage, playbook maintenance,
    4. SonarQube report analysis, rules settings, etc
    5. Jira, Confluence usages for automation results integration
    6. Gatling performance or similar performance test integration to Jenkins pipeline to make sure the workflow includes performance stage as well.
  3. Kibana visualization, ELK stack building and integration. This will help real time reporting on automation results and metrics.
  4. AI, Machine learning knowledge, experience on AI , ML tools and framework or libraries like Tensorflow
  5. Programming skills in Java, powershell, Python, R, Database experience, web development experience etc

What is Selenium Grid Extras

WHAT IS SELENIUM GRID EXTRAS

Selenium Grid Extras is the enhanced Selenium Grid having more features like auto upgrade of browsers and Video recording enabled for error debugging purposes. Following Additional benefits due to Selenium Grid extras,

  • Explicitly kills browsers after the test
  • Increased stability for the automation
  • Better support for IE on nodes
  • JVM clearing is done by restarting the Java process on the Nodes by Grid Extras, this happens periodically whenever Node is not in use.
  • Extras can restart the OS after 15 – 20 tests which boosts the performance on Nodes.

What is contract testing

What is contract testing?

Contract testing is famous in microservices world. When we consider less numbers of microservices,  then contract testing is not so necessary.However when you look at the Amazon or Netflix microservices mesh, it is countless. Such cases it is extremely difficult for developer or tester to maintain unit/automation test suite as per the microservices development chnages.
Contract testing is the best possible solution currently offered for this situation. In contract testing, a mocked service is created to represent the provider.  There are commercial or opensource tools available to stimulate this. In short, contract is set of predefined requests and responses created by automation or developer team to do their testing.

How to read pdf content in java for automation project

How to read pdf content in java?

Apache PDFBox and FontBox jar available can be useful here. Add these two libraries to your Maven Pom.xml or build.gradle dependencies.
Then write java code to parse your PDF files to create POJOs.
What is POJO in javaPOJO stands for Plain java object and it has not restrictions or class path dependency.

What is google App Engine

What is Google’s App Engine ?

Google provides platform as service or PaaS via Google’s App Engine.App Engine is a cloud computing platform where development and hosting of applications can be done.Other feature is App engine scales up on demand basis when the requests are more.
App Engine supports almost all development technologies like Go, Java , Python, .NET, ruby.
Python web frameworks like Flask, Django all can run on App Engine.

How to setup angular project

How to setup Angular project and generate components ?

  1. install latest nodejs from nodejs.org
  2. Go to git bash/powershell ISE/CMD
  3. type following commands,
  4. install Angular : npm install -g @angular/cli
  5. ng new my-newweb-app
  6. ng g c myFirstModule or type mg generate component myFirstModule (optional)
  7. go to project folder ” my-newweb-app ” via commandline itself
  8. type mg serve -o

Other programming notes

select [(ngModel)]=”value” (change)=”selected()”

option *ngFor=”let item of data” [ngValue]=”item”>{{item.name}}</option
</select

selected(){
alert(this.value.name)
}

data:Array = [
{id: 0, name: “Test “},
{id: 1, name: “Test2”}
];

div>  <input ref-email placeholder=”text here” />  </div

What is ELK

What is ELK (Elastic search, Logstash, Kibana) ?

ELK stack is a combination of 3 open-source products as below,

  1. Elasticsearch, a search and analytics engine.
  2. Logstash, that index the data to Elasticsearch. Logstash has a config file that has input,filter and output section. Config file looks like json file.
  3. Kibana, a visualization tool which provides a web based GUI for a user. User can design the bar, plot reporting charts.
    In order to make Kibana and Elasticsearch interact, you need to make both server up and running. Then logstash will index the data to Elasticsearch. 
    Then Kibana would read the data from Elasticsearch and visualize it.

DevOps vs DevSecOps vs NetOps

What is DevOps vs DevSecOps vs NetOps ?

DevOps is the practice of using set of tools, processes and practices to get good agility in software implementation to customers. It combines Dev (software development ) and Ops (information operations). DevOps shortens the development lifecycles and provides Continous Integration & Delivery. 
DevSecOps is when security features are included in DevOps CI/CD flow.
NetOps is when network services are packaged to DevOps.

Jenkins job vs pipeline

What is Jenkins jobs and Jenkins pipeline ?

Jenkins jobs and Jenkins pipeline are essentially same, however pipeline is more staged flow of jobs. For Jenkins pipeline, Jenkinsfile is used.
What is Jenkinsfile?Jenkinsfile is a text file placed in the root project directory. The Jenkinsfile has multiple stages like build, unit test, sonar test, functional,  regression, integration,  performance testing, deployment etc.