TCQAA Forums
  Manual Testing
  Testing a large-scale database

Post New Topic  Post A Reply
profile | register | preferences | faq | search

next newest topic | next oldest topic
Author Topic:   Testing a large-scale database
happydlm
Member

Posts: 2
Registered: Jul 2000

posted July 31, 2000 02:02 AM     Click Here to See the Profile for happydlm     Edit/Delete Message   Reply w/Quote
Does anyone have an example of a test plan and process for testing a large-scale database? How is testing a database different from testing other applications? What are the pitfalls I should pay attention to?

IP: Logged

mhebig
unregistered
posted August 02, 2000 07:29 AM           Edit/Delete Message   Reply w/Quote
I can provide you with an example of a test plan I have used in the past that you can use as a starting point. Testing a database is different then testing other applications because you are focusing on validating the functionality of the database. Test cases are written to ensure the data is added, updated and deleted correctly. Some "pitfalls" you may want to watch out for are…
1.) Dirty read problem - A dirty read occurs when the application reads data from a database that has not been committed to permanent storage yet. Consider two users performing the following…
a.) User 1 reads the price for item XYZ from the database (Price for item XYZ = $10.00).
b.) User 1 adds $5.00 to the price of item XYZ. The price for item XYZ now equals $15.00. However, you have not saved the price to the database so the update is not permanent yet.
c.) User 2 reads the price for item XYZ from the database (Price for item XYZ = $15.00).
d.) User 1 cancels save which causes the database to restore the price for item XYZ to $10.00.
e.) User 2 adds $10.00 to the price of item XYZ and saves the data to the database. The price for item XYZ now = $25.00 when it should be $20.00.

2.) An unrepeatable read occurs when a component reads some data from a database, but upon reading the data, the data has been changed.
a.) A customer service representative (CSR) receives a call from a customer asking about a test that are available in their area. The CSR gets a list of tests that are available in the customers’ area from the database.
b.) Another user changes the list of tests that are available in the customers’ area.
c.) The CSR re-reads the data and the list has magically changed.

3.) A phantom problem occurs when a new set of data magically appears in the database between two read operations.
a.) A customer service representative (CSR) receives a call from a customer asking about a test that are available in their area. The CSR gets a list of tests that are available in the customers’ area from the database.
b.) Another user adds new tests and deletes a couple old tests from the list of tests that are available in the customers’ area.
c.) The CSR re-reads the data and new tests has magically been added.

4.) Losing an update to a single item. - One or more updates to a single data item can be lost due to inadequate concurrent update procedures.
5.) Inaccurate or incomplete data. - The integrity of data entered is lost.


If you have any questions please let me know.

------------------
Martin Hebig, CQA, CSTE

[This message has been edited by mhebig (edited August 02, 2000).]

IP: Logged

happydlm
Member

Posts: 2
Registered: Jul 2000

posted August 07, 2000 08:51 PM     Click Here to See the Profile for happydlm     Edit/Delete Message   Reply w/Quote
quote:
Originally posted by mhebig:
I can provide you with an example of a test plan I have used in the past that you can use as a starting point. Testing a database is different then testing other applications because you are focusing on validating the functionality of the database. Test cases are written to ensure the data is added, updated and deleted correctly. Some "pitfalls" you may want to watch out for are?
1.) Dirty read problem - A dirty read occurs when the application reads data from a database that has not been committed to permanent storage yet. Consider two users performing the following? a.) User 1 reads the price for item XYZ from the database (Price for item XYZ = $10.00).
b.) User 1 adds $5.00 to the price of item XYZ. The price for item XYZ now equals $15.00. However, you have not saved the price to the database so the update is not permanent yet.
c.) User 2 reads the price for item XYZ from the database (Price for item XYZ = $15.00).
d.) User 1 cancels save which causes the database to restore the price for item XYZ to $10.00.
e.) User 2 adds $10.00 to the price of item XYZ and saves the data to the database. The price for item XYZ now = $25.00 when it should be $20.00.

2.) An unrepeatable read occurs when a component reads some data from a database, but upon reading the data, the data has been changed.
a.) A customer service representative (CSR) receives a call from a customer asking about a test that are available in their area. The CSR gets a list of tests that are available in the customers?area from the database.
b.) Another user changes the list of tests that are available in the customers?area.
c.) The CSR re-reads the data and the list has magically changed.

3.) A phantom problem occurs when a new set of data magically appears in the database between two read operations.
a.) A customer service representative (CSR) receives a call from a customer asking about a test that are available in their area. The CSR gets a list of tests that are available in the customers?area from the database.
b.) Another user adds new tests and deletes a couple old tests from the list of tests that are available in the customers?area.
c.) The CSR re-reads the data and new tests has magically been added.

4.) Losing an update to a single item. - One or more updates to a single data item can be lost due to inadequate concurrent update procedures.
5.) Inaccurate or incomplete data. - The integrity of data entered is lost.


If you have any questions please let me know.


Thank you for your helpfulness. Your information is very important for me because it is my first time to test a database. Could you Email me your test plan you have used in the past as you mentioned and any advice or template for developing test cases?
My email address is "happydlm@163.net". Look forward to your reply.

Best Regards,
Happydlm

IP: Logged

All times are CT (US)

next newest topic | next oldest topic

Administrative Options: Close Topic | Archive/Move | Delete Topic
Post New Topic  Post A Reply
Hop to:

Contact Us | www.TCQAA.org

Powered by Infopop www.infopop.com © 2000
Ultimate Bulletin Board 5.45c