How can you conduct Database testing manually?...

Answer Posted / raja

Data Base testing key points
1. Setup database testing
Server Setup Scripts
Two cases must be tests:
One is to set up databases from scratch and, other to set up
databases when they already exist.

Minimum list of areas are as follows:
* Is a setup batch job available to run without much
operator’s assistance
(It is not acceptable if it requires an operator to run many
batch jobs manually)
* Work environment the setup needs to run (DOS, NT)
* Environment variables (i.e. is %svr% defined?)
* Time it takes to set up
* Set up databases from scratch
* Set up from existing databases
* Set up log and failure messages
1. Testing Connections from data base to application.
EX: driverClassName = org. postgresql. Driver
URL =jdbc:postgresql://220.120.100.42:9000/ERS
Username=users
Password= postgres
2. Testing Tables
1. Testing Constraints
1. Testing Primary Keys 2. Testing
Foreign Keys
2. Testing Columns
1. Testing Data Type
2. Testing Data Size.
3. Data invariants: Columns often have
invariants, implemented in the forms of constraints, defined
for them. For example, a number column may be restricted to
containing the values 1 through 7. These invariants should
be tested.

3. Testing Integrity
1. Testing Entity:
Whether it is taking duplicate values, whether it
is taking null values.
2. Testing Domain: Whether it is taking default
values even though if we won’t give, checking the
values in the column. Ex: age column should take < 60.
3. Testing Referential Integrity: Checking Whether "child"
rows are deleted or not when a parent row is deleted from
parent table.
4. User Defined Entity: Business rules that do not fall
into entity.
4. Testing Indexes.
Indices, clustered or no clustered; unique or
not unique
5. Testing Sequences
• Sequence c and provide minimum, maximum, start and
increment values are not.
• Sequcen.nextval will provide the next sequence number

6. Testing Stored Procedures
1.1 Individual procedure tests

Verify the following things and compare them with design
specification
* Whether a stored procedure is installed in a database
* Stored procedure name
* Parameter names, parameter types and the number of parameters

Outputs:

* When output is zero (zero row affected)
* When some records are extracted
* Output contains many records
* What a stored procedure is supposed to do
* What a stored procedure is not supposed to do
* Write simple queries to see if a stored procedure
populates right data

Parameters:
* Check parameters if they are required.
* Call stored procedures with valid data
* Call procedures with boundary data
* Make each parameter invalid a time and run a procedure

Return values:
* whether a stored procedure returns values
* When a failure occurs, nonzero must be returned.

Error messages:
* Make stored procedure fail and cause every error message
to occur at least once
* Find out any exception that doesn’t have a predefined
error message

Others:
* Whether a stored procedure grants correct access privilege
to a group/user
* See if a stored procedure hits any trigger error, index
error, and rule error
* Look into a procedure code and make sure major branches
are test covered.

1.2 Integration tests of procedures
* Group related stored procedures together. Call them in
particular order
* If there are many sequences to call a group of procedures,
find out equivalent classes and run tests to cover every class.
* Make invalid calling sequence and run a group of stored
procedures.
• Design several test sequences in which end users are
likely to do business and do stress tests
7. Testing Views
Providing dynamic data or not.
8. Testing Triggers
1.1 Updating triggers

Verify the following things and compare them with design
specification
* Make sure trigger name spelling is correct
* See if a trigger is generated for a specific table column
* Trigger’s update validation
* Update a record with a valid data
* Update a record, a trigger prevents, with invalid data and
cover every trigger error
* Update a record when it is still referenced by a row in
other table
* Make sure rolling back transactions when a failure occurs
* Find out any case in which a trigger is not supposed to
roll back transactions

1.2 Inserting triggers

Verify the following things and compare them with design
specification
* Make sure trigger name spelling
* See if a trigger is generated for a specific table column
* Trigger’s insertion validation
* Insert a record with a valid data
* Insert a record, a trigger prevents, with invalid data and
cover every trigger error
* Try to insert a record that already exists in a table
* Make sure rolling back transactions when an insertion
failure occurs
* Find out any case in which a trigger should roll back
transactions
* Find out any failure in which a trigger should not roll
back transactions
* Conflicts between a trigger and a stored procedure/rules
(i.e. a column allows NULL while a trigger doesn’t)

1.3 Deleting triggers

Verify the following things and compare them with design
specification
* Make sure trigger name spelling
* See if a trigger is generated for a specific table column
* Trigger’s deletion validation
* Delete a record
* Delete a record when it is still referenced by a row in
other table
* Every trigger error
* Try to delete a record that does not exists in a table
* Make sure rolling back transactions when a deletion fails
* Find out any case in which a trigger should roll back
transactions
* Find out any failure in which a trigger should not roll
back transactions
* Conflicts between a trigger and a stored procedure/rules
(i.e. a column allows NULL while a trigger doesn’t)


9. Security Testing
1. Previlages to users & Super Admin.
There are a number of ways that security of the database is
maintained. The most common ways are via usernames and
passwords, or via integration with a directory such as LDAP.
Some of the key questions to consider are:
• Does each user of the application have a separate password
to the database, or is there a shared database account for
all users of the application?
• What is the permission-level of the account(s) used to
access the database?
• What interface is used to manage the accounts used to
access the database? What other ways are there to access the
database using the same login information as the application?
10. Testing DML, DDL and DCL.
11. Testing Backup & Recovery.
12. Performance Testing
1. Access Time to Read/Write/Update/Delete a row
2. Access Time for query retrieving multiple rows.

Is This Answer Correct ?    11 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

what types of bugs will we find out in banking projects

1835


How can I done a Web Testing? Which steps are include in it?

1436


Write a Test scenario for Outlook Search functionality.

2595


Hi, Im B.E 2011 pasout,worked in back office till now, but now im searching for job into manual testing with fake exp of 1 year..Plz suggest me how to prepare for an intervw? how to gain real time testing knowledge? Is dere any site where i can practice testing?

1901


negative test cases on banking domain ?

3403






write test case for gmail login page

4641


what are the prerequisite conditins to test clientserver and web applications

1597


Explain the strategy for testing a Java application?

1649


What are the interview question on insurance domain in manual testing

19214


how to write test cases on SRS?tell me any example which type of certification is usefull for less then 1 yr exp. people in testing. can anybody know immediatly sent it which the answer

1664


What is quality center? What are the modules of quality center?

675


What is the main use of preparing a traceability matrix?

704


What is bug, deffect, issue, error?

816


What is a testing process / lifecycle?

693


Assume a login page, and you have written 10 cases(say for example). How will you justify that these 10 testcase suffient for the login and how do you say this is 100% satisfies the need.

1724