首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Whitebox和Blackbox测试

Whitebox和Blackbox测试
EN

Stack Overflow用户
提问于 2014-02-28 16:16:44
回答 5查看 12.6K关注 0票数 1

我一直在为白盒和黑匣子的测试而阅读。

如果我没有错:

Whitebox测试软件程序的实现,而黑盒测试输入和输出。

请给我一个这两种情况的简单代码的例子好吗?

提前谢谢你。

所以,这里的代码是一个黑匣子测试?

代码语言:javascript
复制
  class Schalter
  {
     private boolean
     {
       private boolean _istAn;
       public Schalter(boolean anfangsAn)
       {
          _istAn = anfangsAn;        
       }       
       public boolean istAn()
       {
          return _istAn;
       }   
       public void umschalten()
       {
         _istAn = !_istAn;
       }
  }
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2014-02-28 16:56:39

黑匣子-> --您实际上只是在检查您给程序的输入是否得到了正确的输出。

假设你有一个提示符,它要求你输入两个数字来得到数字的和。

输入2个数字:2 5输出:2+5=7

这就是黑匣子的真正意义。

白色方框,你会想要检查,看看它是如何发生的。

你可以做正常的事情,就像

代码语言:javascript
复制
int adder(int firstNum, int secondNum)
{ 
    return firstNum + secondNum;
}

这比说这样的话更有效率:

代码语言:javascript
复制
int adder(int firstNum, int secondNum)
{
    int temp;
    for(int i = 0; i < (firstNum + secondNum + 1); i++)
        temp = i;
    return temp;
}

在白盒测试中,您可以查看代码并找出哪个更有效和/或更易于阅读。显然,第一个原因是:

  1. 代码更简单更容易理解。
  2. 第一种方法不使用循环来寻找答案,这比第一种方法花费更多的处理时间。
  3. 第一个不创建不需要的额外变量。这意味着需要更少的内存来跟踪数据。

这是一个简单而武断的例子,但是当您进入较大的项目时,当您进行单元测试以确定代码的较小部分是否有效时,您将进行大量的白盒测试。通常,当您开始将代码的较小部分集成到较大的项目中时,您会进行黑箱测试,以检查您是否仍然获得了给定输入的正确输出。

另一种看待它的方法是使用黑盒测试来查看输出是否有问题,如果是的话,您可以进行白盒测试,以查看代码中的错误。

票数 9
EN

Stack Overflow用户

发布于 2014-02-28 16:19:10

黑盒测试是一种测试方法,在不关心程序如何操作输入的情况下,您只需要检查输出对于指定的输入是否有效。

Whitebox测试是一种测试方法,当您关心程序如何操作输入和输出时。

我想有一个例子是,如果您正在编写排序算法的测试。黑匣子测试只需检查输出是否按照预期排序。白盒测试可能会检查排序是否为稳定,因为这取决于排序算法的实现。例如,合并排序是稳定的,而典型的快速排序的就地版本则不是(虽然确实存在稳定的版本)。

票数 4
EN

Stack Overflow用户

发布于 2014-03-13 11:38:13

简单地说,白盒测试是一种测试,您可以了解软件或任何应用程序的内部路径和编码。在白盒测试中设计测试用例需要编程技巧。白盒测试可以在单元测试、集成测试和System测试中进行。

黑匣子测试中,您只需要SRS(软件需求规范)来了解系统的功能和客户的需求。这里没有测试测试人员的编程技能。通常在手动测试中遵循BlackBox方法。黑匣子测试几乎在所有级别进行,如单元测试、集成测试、系统测试和验收测试

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22100302

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档