以下是我的理解:
动态测试是在系统运行时执行的测试。 系统未运行时执行静态测试。
Black-Box测试侧重于功能,并且在不知道程序的内部工作的情况下执行。 白盒测试在代码本身中寻找问题。
我想知道的是, 可以公平地说,所有Black-Box测试都是静态的吗? 是否公平地说一些White-Box测试是静态的(例如,检查源代码)而一些是动态的(分支/路径测试)?
答案 0 :(得分:2)
公平地说,所有黑盒测试都是静态的吗?
没有。黑盒测试通常是动态的。事实上,当我们考虑软件测试时,我们通常会想到人们运行代码并记录他们发现的问题。这是经典的动态黑盒测试。
然而,有黑盒静态测试。当您检查查找错误的规范或要求时,这是静态的黑盒测试。这是一些技巧
阅读规范,好像您是客户一样 - 任何事情都没有意义?
将规范与行业或公司指南进行比较 - 任何违规行为?
阅读要求以确保每个要求:
正确
可行
必要
优先
无歧义的
可修改
完整
可验证
如果违反了任何规定,您就会发现需求错误并节省了大量的时间和金钱。
答案 1 :(得分:1)
我无法想到任何黑盒测试都是静态的情况。
黑盒/白盒是指测试人员对被测系统(SUT)内部工作原理的了解。
静态/动态是指被测系统的状态(运行/动态或停止/静态)。
黑盒测试在不知道其内部实现的情况下探测正在运行的系统的外部。很多功能测试都属于这一类。如果没有加载系统并看到它如何响应各种刺激,我不确定黑盒会怎么做。
白盒测试可以动态完成(例如,具有执行渗透测试的系统内部工作知识的安全测试人员)或静态测试,例如运行AppScan,FxCop,JavaCop等工具,寻找违反准则的行为和源代码中的潜在安全漏洞。
答案 2 :(得分:0)
某些黑盒测试是动态的,因为您可以在系统运行时测试系统而不了解其内部结构(例如,在使用最终用户界面或公共API时)。
答案 3 :(得分:0)
公平地说,所有黑盒测试都是静态的吗?
黑盒测试可以是静态的也可以是动态的。 静态黑盒测试 - 需求文档,规范文档或设计文档的评论。
动态黑盒测试 - 通过提供各种输入,执行各种操作,对测试中的应用程序进行测试。
答案 4 :(得分:0)
它是一个层次结构
顶部的白盒和黑盒测试 白盒测试分为CFA和DFA DFA代表数据流分析,分析为静态DFA和动态DFA
答案 5 :(得分:0)
静态测试代码未执行。而是手动检查代码,需求文档和设计文档以查找错误。因此,名称“静态”。 在动态测试下执行代码。它检查软件系统的功能行为,内存/ CPU使用情况以及系统的整体性能。因此名称为“动态”。
黑盒测试是一种测试技术,它忽略了系统的内部机制,并专注于针对系统的任何输入和执行生成的输出。 白盒测试是一种考虑系统内部机制的测试技术。
黑盒测试和白盒测试是用于软件测试的测试方法。动态测试可以是黑盒测试或白盒测试。
例: 单元测试是一种动态测试(功能测试类型),它属于白盒测试类。
系统测试是一种动态测试(功能测试类型),它属于黑盒测试类。
集成测试是一种动态测试(功能测试类型),它可能同时属于白盒测试和黑盒测试。
请参阅:https://www.codeproject.com/Tips/351122/What-is-software-testing-What-are-the-different-ty