Was ist ein Gray Box-Test?
Gray-Box-Tests sind professionelle Tests, die häufig für Computersoftware verwendet werden und bestimmte Aspekte von Black-Box-Tests und White-Box-Tests kombinieren. Die allgemeine Idee ist, diese beiden anderen Typen zu kombinieren, um die jeweiligen Stärken zu nutzen und gleichzeitig ihre Einschränkungen oder Schwächen zu minimieren. Gray-Box-Tests bestehen im Wesentlichen aus professionellen Tests, bei denen die Tester einige der Funktionsweisen der Software verstehen, aber nicht alles darüber verstehen.
Beim Entwickeln und Testen von Computersoftware werden häufig zwei gängige Testmodelle verwendet. Hierbei handelt es sich um Black-Box-Tests und White-Box-Tests, und Gray-Box-Tests sind im Grunde genommen eine Kombination aus beiden. Black-Box-Tests bestehen aus Tests, bei denen die Tester den Code, mit dem die Software ausgeführt wird, nicht verstehen oder nicht darauf zugreifen können. Beispielsweise kann jemand Black-Box-Tests verwenden, um einem externen Unternehmen die Entwicklung von Software zu ermöglichen, die mit einem Computerbetriebssystem (OS) ausgeführt werden kann, ohne dem Unternehmen den Quellcode für das Betriebssystem zu geben.
Diese Art von Tests wird häufig von vielen verschiedenen Software-Unternehmen verwendet und kann sowohl für interne als auch für externe Tests verwendet werden. Eine der größten Schwächen dieser Art von Tests besteht jedoch darin, dass die begrenzten Kenntnisse der Tester ihre Tests möglicherweise behindern. Dies erfordert häufig, dass die Ergebnisse von einem Dritten analysiert werden, der sowohl die ausgeführten Tests als auch den Code hinter der getesteten Software versteht. Gray-Box-Tests versuchen, einige dieser Probleme zu lindern, indem diese Art von Tests mit bestimmten Elementen des White-Box-Tests kombiniert werden.
White-Box-Tests bestehen aus Softwaretests, die von Personen durchgeführt werden, die die getestete Software vollständig verstehen und Zugriff auf den Quellcode der Software haben. Dies geschieht häufig intern bei einem Softwareentwickler, um sicherzustellen, dass das Programm ordnungsgemäß ausgeführt wird und die Tester direkt mit dem Code hinter dem Programm interagieren können. Es gibt jedoch potenzielle Sicherheitsprobleme bei dieser Art von Tests. Aus diesem Grund werden häufig Gray-Box-Tests verwendet, um beide Typen auf produktive und sichere Weise zu kombinieren.
Beim Gray-Box-Test verstehen die Tester bestimmte Aspekte der verwendeten Software und können möglicherweise einige Teile des Quellcodes sehen, jedoch nicht den gesamten Code. Auf diese Weise können die Tester vollständiger mit dem zu testenden Programm interagieren und es besser verstehen, als dies beim Black-Box-Test möglich ist, jedoch ohne den vollständigen Zugriff und die Sicherheitsprobleme, die beim White-Box-Test auftreten können. Jemand, der beispielsweise Gray-Box-Tests für Software für ein neues Betriebssystem durchführt, kann möglicherweise Code für Aspekte des Betriebssystems anzeigen, die für das Testen des Programms relevant sind, jedoch nicht den gesamten Quellcode.