让我对我目前在这个领域的情况有所了解。
我自动化Web应用程序进行测试。主要是使用Selenium Webdriver和Java的基于浏览器的UI自动化。使用testNg框架实现的真正测试。 大多数集成测试(我的意思是当系统的不同组件涉及测试场景或用户旅程时)是通过UI自动化实现的。我知道这很糟糕。 UI自动化需要花费大量时间,因为测试的设计方式也很多,并且在开发难度,维护等方面也存在许多其他缺点。
Web应用程序或我们的产品也公开了许多REST API,但我们没有针对每个功能的API。
我还有自动化的SoapUI测试,可以在各种API端点上进行测试,并验证端点是否正常工作。这与端点上的固定测试数据紧密相关。所以我不能把它称为集成测试。只有当某些东西不能与相应的端点一起工作时,才会捕获问题。 我知道SoapUI只支持端点测试,只要有终点我们就可以进行测试
问题1)它是否支持复杂的集成测试(当你的应用程序的某些模块没有api而某些模块有api时...但最终这两个模块的集成需要自动测试)?
所以我正在寻找如何最好地利用UI自动化和REST apis来从中获得最大的收益。我想在我的UI自动化框架中使用Rest-assured,并使用浏览器执行某些操作,并使用放心方法对某些集成结果进行评估。这样,执行的第二部分将非常快。初始部分需要使用浏览器执行,因为它没有api。 (例如,上传文件将使用selenium-browser完成,其内容是否真正上传,将通过放心验证)
问题2) 您如何看待这种方法?对于与我类似的情况,还有其他更好的方法来实现自动化集成测试或端到端测试吗? 适合这里的任何工具或流程?
谢谢&温馨的问候
Musaffir