Database/automation Flashcards
What is your role in database testing?
Validate and verify data, to test the relationship between tables, to test the table structure and data accuracy by writing complex SQL queries/statements
You test actual data against your requirements
What is the difference between primary and foreign key?
Primary key – this is the most unique value or column of data in a table. Appears once in a table
Foreign key – this is data shared amongst multiple tables that can be used to form relationship between tables
Differences between the JOINS
Inner join – matching info from two tables
Right join – matching and all info from right table, (N/A)
Left join – matching and all info from left table
Full outer join – all data
What database tool are you familiar with?
Oracle SQL developer
Microsoft SQL server
MySQL
Mongo DB
PostgreSQL
Toad
What is your automation framework
Selenium webdriver – automation tool
Java – coding language
IntelliJ – IDE – editor
Maven – built tool, dependencies and archives, jars, maven’s live repository to access and implement the dependencies directly into our projects
TestNG – testing Framework, organize, structure, and execute test (annotations, xml suite, execute tests in parallel or cross browser)
What is maven and what is the advantage of it when compared to a java project
Maven – plugin that could be used across all projects, dependencies and archives are located in a live repository, POM file (add you dependencies and the components of your project)
is the most ideal locator to use when locating an element
must be a unique locator (lD, Name), Xpath (dynamic and you can locate using relative or absolute xpath)
Relative and absolute xpath:
Relative – you are locating a unique element closer to the element you are trying to locate. And then you can go down the HTTP hierarchy to your element
Absolute- you are starting from the beginning of the http hierarchy to your element
What is the different between static and non-static method
Static – you can access this method directly using the class name and dot (.) operator. Static methods and variables belong to the class.
Non-static – you can access this method by creating an instance of the class and then using that with the dot operator to call your method
What are the different types of waits available and when would you use them?
Thread.sleep (implicit wait, hard coded), pauses the execution of the code for the specified time
Implicit wait – if action is not executed within the time frame provided or designated (hard coded time) it will throw an exception – beginning after navigating to a site.
Explicit wait – wait until the expected condition is met. The code will execute when the specified condition is fulfilled, you provide a maximum wait time. More dynamic, allows your test to execute faster
Fluent wait
What type of database testing do you normally perform and what is the tool you use?—
Functional test – database is working properly
Relation testing – relationship between tables and columns
Structural testing – structure of tables and columns and data types
Performance – verify the performance of the data base
Oracle SQL developer
SQL – Structured query language
DBMS- Database management system
RDBMS – relational database management system
What is the difference between inner join and left join?
Inner- matching info between two tables are retrieved
Left join – all matching values from table1 and table2 and all values from table1 as well
Full outer join – matching values from both tables and their matching values
What is a data schema –
relationship between the tables, tells us the primary keys and the foreign keys
Are you familiar with the page object model. Can you describe it
POM is primarily a design pattern for structuring UI interactions in test automation
In QA automation, the Page Object Model (POM) represents each web page with a separate class, encapsulating its elements and functionalities for improved test code readability and maintenance.
The Page Object Model (POM) is a design pattern in QA automation where each web page is represented by a separate class. These classes encapsulate the page’s elements and functionalities, enhancing test code readability, reusability, and maintenance.
Automated test design –
Page class (you store the locators and action for those elements into methods related to a pages of the website)
Test class – corresponding test class also related to the pages of the website and your page class where you call the action methods from your page class
Code more reusable, structure, maintainable to change
Data-Driven (apache POI)
Store values in excel and you can call these values into your tests and we can write back into the excel
For large data sets, multiple data sets
Parameterization of data
Hybrid design
A combination of different designs, more free
At what part of testing would you integrate automation testing?
Towards the end of my sprint running regression suits and finding possible candidates for automation scripts
And
Use automation in ci/cd pipeline
What kind of test would you run manually and others in automation?
Manual: new features and and tests that require human judgement (exploratory testing)
Automation : manual tests that are repetitive
And major functionalities