Gabarito: b)
Vamos analisar cada afirmativa:
I. Caixa-branca: correta. Essa técnica realmente trabalha com o código fonte, testando condições, fluxos, caminhos lógicos, etc.
II. Caixa-preta: correta. Ela foca no comportamento externo, testando entradas e comparando saídas sem olhar o código interno.
III. Caixa-cinza: incorreta. Caixa-cinza é uma combinação das duas anteriores, onde se tem algum conhecimento parcial do código, não tem a ver com facilidade de uso para o usuário.
IV. Caixa-azul: incorreta. Não existe essa técnica chamada "caixa-azul" no contexto de testes de software.
Portanto, apenas as afirmativas I e II estão corretas.
Vamos analisar cada afirmativa:
I. Caixa-branca: correta. Essa técnica realmente trabalha com o código fonte, testando condições, fluxos, caminhos lógicos, etc.
II. Caixa-preta: correta. Ela foca no comportamento externo, testando entradas e comparando saídas sem olhar o código interno.
III. Caixa-cinza: incorreta. Caixa-cinza é uma combinação das duas anteriores, onde se tem algum conhecimento parcial do código, não tem a ver com facilidade de uso para o usuário.
IV. Caixa-azul: incorreta. Não existe essa técnica chamada "caixa-azul" no contexto de testes de software.
Portanto, apenas as afirmativas I e II estão corretas.