尝试测试一个非常复杂的功能中包含的简单功能。
简单功能需要多个步骤才能启动。这些步骤对数据库有很多影响,但它们与功能本身没有任何交互。
由于我们只想通过我们的API测试这个简单的功能,其中一个想法是创建一个专门用于测试它的路由。然后,我们会偶尔访问该路线,测试该功能是否仍然有效。
我发现只有一条或多条路线仅用于测试的目的,这有点令人不安。但我可以看到很多优点。
这是一种好的做法还是有更好的方法来做到这一点?
答案 0 :(得分:1)
很难回答具有这种抽象程度的问题,因为你可以描述任何事情。但简而言之,如果访问功能本身很复杂,那么测试也是如此。
集成测试是软件测试的一个阶段 各个软件模块组合在一起进行测试。
我认为你有点误会说你的功能并不相互依赖。如果有许多步骤强制,则表示两者之间存在连接。您应该按照上面引用的建议对它们进行一起测试,或者将您的功能分离,以便它们可以真正独立。
例如,可以拥有需要身份验证和授权的帖子新闻功能。有some helpers内置以简化Laravel本身的测试。如果这个例子与你的问题足够相似,那么编写这样的帮助就好了,而不是为它创建cron作业。使用cron作业,您需要在您拥有的每个环境以及所有开发人员环境中复制相同的内容。