黑盒测试和端到端测试有什么区别?

What is the difference between black box testing and end-to-end testing?

两者都是从用户的角度来考察应用,那么,它们有什么区别呢?

您应该阅读有关测试的基础知识,例如测试类型 - 黑盒、白盒、灰盒。

黑盒测试是在不进入代码的情况下测试应用程序。

端到端测试是一种黑盒测试,我们从完整场景的角度测试应用程序。一个场景可以包含许多功能。这些功能中的每一个都可以有自己的功能测试。假设用户在网站上购物,然后从搜索商品到购买是一个完整的端到端测试,即搜索商品然后阅读其描述然后添加到购物车然后订购它是一个端到端测试。

虽然上面的端到端测试包含许多功能,如搜索、添加到购物车等。所有这些功能都可以有自己的功能测试。

功能测试和端到端测试都是黑盒测试。

您还可以阅读End to End tests

就是黑盒测试,它在不查看代码或逻辑的情况下测试应用程序,基本上传递输入并寻找预期的输出

端到端测试是功能测试和非功能测试(性能、安全性、可靠性....)的结合

我认为黑盒和端到端测试的定义可能会根据项目的上下文而有所不同。我见过不同的人使用这些术语来描述不同的事物。话虽这么说,通常这就是这两个术语的意思-

黑盒测试 - 这指的是将系统或应用程序作为黑盒进行测试,您可以在其中提供不同的输入并期望获得特定的输出,而不必了解系统的内部结构.在此之下有多种技术,例如等价 class 划分、决策 table 测试等

端到端测试 - 这是指基于端到端用户流程测试系统,而不是像单元测试或故事级测试那样测试系统具有单独的组件.例如 - 登录应用程序,然后将产品添加到购物车,然后转到结帐屏幕,然后下订单,然后注销应用程序可能是一个用户流。