【发布时间】:2019-04-05 11:44:29
【问题描述】:
单元测试与开发人员编写的应用程序的现有代码紧密相连。但是 UI 和 API 自动化测试(集成测试)呢?有人认为,在单独的自动化解决方案中重用应用程序的代码是可以接受的吗?
【问题讨论】:
标签: unit-testing automated-tests
单元测试与开发人员编写的应用程序的现有代码紧密相连。但是 UI 和 API 自动化测试(集成测试)呢?有人认为,在单独的自动化解决方案中重用应用程序的代码是可以接受的吗?
【问题讨论】:
标签: unit-testing automated-tests
答案是否定的。 UI 测试跟随 UI,进入那个页面,在那个文本框中输入那个值,按下那个按钮,我应该看到这个文本。您不需要任何与此相关的代码。所有这些都应该根据一些接受标准来完成,因此您应该已经知道会发生什么,而无需查看任何代码。
对于 API 集成测试,您可以调用端点,使用一些有效负载,然后检查结果。您不需要为此引用任何代码。 API 应该记录在案,并很好地解释哪些端点可用、有效负载是什么样的以及您可以期望得到什么。
我不确定您为什么要考虑在自动化项目中重用应用程序代码。
好的,在澄清之后,您只是在谈论重用模型,而不是实际代码。这不是一个坏主意,它实际上可以提供帮助,只要这些 nuget 包不引入任何其他依赖项。
代码可重用性是一个很棒的概念,但在实践中很难做到正确。模型通常带有注释,这些注释需要自动化项目中当然不需要的其他包。因此,如果您可以在没有额外依赖项的情况下获得 nuget 包,那么实际上只有数据模型而不是其他任何东西,那么它确实有效。除此之外,它会产生问题,所以我会推迟
【讨论】: