Unit testing 如何测试前端和API?

Unit testing 如何测试前端和API?,unit-testing,design-patterns,automated-tests,cucumber,bdd,Unit Testing,Design Patterns,Automated Tests,Cucumber,Bdd,简介:我目前正在我的大学学习TDD和BDD课程。我们还没有学到任何关于如何进行前端测试的知识,除了我们永远不应该通过测试视图层来进行BDD或TDD,因为对该层的任何更改都会扰乱所有测试。我们只在java和业务逻辑层中工作过(我们甚至没有学习过持久性) 问题: 我正在使用BDD方法开发一个应用程序。BDD帮助我实现了业务逻辑。我使用hibernate ORM和mysql进行持久化。而且,可以安全地假设持久层中的任何故障也会导致业务逻辑测试失败。如果持久性层出现问题,那么即使业务层测试会失败,也有必

简介:我目前正在我的大学学习TDD和BDD课程。我们还没有学到任何关于如何进行前端测试的知识,除了我们永远不应该通过测试视图层来进行BDD或TDD,因为对该层的任何更改都会扰乱所有测试。我们只在java和业务逻辑层中工作过(我们甚至没有学习过持久性)

问题: 我正在使用BDD方法开发一个应用程序。BDD帮助我实现了业务逻辑。我使用hibernate ORM和mysql进行持久化。而且,可以安全地假设持久层中的任何故障也会导致业务逻辑测试失败。如果持久性层出现问题,那么即使业务层测试会失败,也有必要为数据库编写测试吗

如果我要在应用层实现一个API,并用react编写一个前端。然后我是否应该对组件进行模块化测试,并为API(应用层)编写单独的测试?在api中使用业务逻辑编写的软件可能是错误的,因此我认为测试这一部分也是一个好主意


我在互联网和这里搜索了很多,似乎有用于测试前端(jest)的工具和用于API测试的selenium或postman。我假设我可以对所有层重用我的特性描述,但是没有更简单的方法来测试所有层吗?这真的是测试应用程序的最好和最简单的方法吗?

您所说的“持久层故障”是什么意思?例如,您存储了一个varchar(255)数据类型,该数据类型被更改为int或有人更改了冒号的名称。这就是我所说的故障。我的想法是这样的“故障”可以在业务逻辑层的测试中检测到