01.02.2013 Views

Software Development Cross Solution - Index of - Free

Software Development Cross Solution - Index of - Free

Software Development Cross Solution - Index of - Free

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

grey box testing<br />

Grey-box testing gets you<br />

CLOSER to the code<br />

Black-box testing works great for a lot <strong>of</strong> applications, but<br />

there are situations where you need more. Sometimes you<br />

just can’t get the results out <strong>of</strong> a system easily without looking<br />

inside, at least a little. This is particularly true with a lot <strong>of</strong><br />

web applications, where the web interface just moves data<br />

around in a database. You’ve got to deal with the database<br />

code as well as the web interface itself.<br />

Grey-box testing is like black-box testing...but you can peek<br />

When doing grey box testing, you’re generally looking for the same things as black<br />

box testing, but you can dig around a little to make sure the system works as it’s<br />

supposed to below the surface. Use grey box testing for things like:<br />

240 Chapter 7<br />

Verifying auditing and logging. When important data (or money) is<br />

on the line, there’s usually a lot <strong>of</strong> auditing and logging going on inside a<br />

system. This information isn’t usually available through the normal user<br />

interface, either. You might need to use a log viewing tool or auditing<br />

report, or maybe just query some database tables directly.<br />

Data destined for other systems. If you’re building a system that<br />

sends information to another system at a later time (say an order for 50<br />

copies <strong>of</strong> Head First <strong>S<strong>of</strong>tware</strong> <strong>Development</strong>), you should check the output<br />

format and data you’re sending to the other systems...and that means<br />

looking underneath what’s exposed by the system.<br />

System-added information. It’s common for applications to<br />

create checksums or hashes <strong>of</strong> data to make sure things are stored<br />

correctly (or securely). You should hand-check these. Make sure systemgenerated<br />

timestamps are being created in the right time zone and<br />

stored with the right data.<br />

Scraps left laying around. It’s so easy as a developer to miss doing<br />

cleanup after a system is done with data. This can be a security risk as well<br />

as a resource leak. Make sure data is really deleted if it’s supposed to be,<br />

and make sure it isn’t deleted if it’s not. Check that the system isn’t leaking<br />

memory while it’s running. Look for things that might leave scraps <strong>of</strong><br />

files or registry entries after they should have been cleaned up. Verify that<br />

uninstalling your application leaves the system clean.<br />

Download at WoweBook.Com<br />

Grey-box testing<br />

But be careful <strong>of</strong><br />

logging confidential<br />

information to<br />

unsecured places,<br />

you won’t make<br />

the right sorts <strong>of</strong><br />

friends that way...

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!