如果这是开放式的,我很抱歉。
目前,我和我的团队正在研究我们的端到端( E2E )测试策略,我们似乎不确定是应该针对我们的分期站点还是在我们的生产站点上执行我们的E2E测试。我们已经认识到,两者都有利弊。
专业分期测试
production.
专业生产测试
有时,我不确定我们是否将E2E与监视服务混为一谈(如果存在这样的事情)。有人对这件事有意见吗?
此外,何时运行E2E测试?由于系统的每个成员都在接受测试,所以似乎并不是测试套件的所有者,因此很难确定什么时候应该运行E2E。我们希望在投入生产之前,我们可以在某种程度上运行E2E。这是否意味着当前端/后端发生变化时,我应该运行这些测试?还是您宁愿在一个时间间隔内运行E2E的执行,而不考虑任何更改?
发布于 2020-12-02 21:15:38
在我的团队经验中,测试自动化更好的是定期在专用测试服务器中完成,只有在成功地连续测试了几个会话之后才部署新代码。
本地测试运行是用于测试自动化开发和调试的。
测试服务器--对于预定的运行,因为--无论您多么擅长编写测试,在某一时刻,它们都会连续数小时运行,而且您需要一段时间内对它们进行可靠的统计,使用不会破坏生产服务器的假数据。
我不同意@MetaWhirledPeas关于只追求快速测试运行的观点。你的首要任务应该永远是更好的覆盖和减少不稳定。您始终可以通过并行化来减少运行时间。
在生产中运行-我见过很多情况,当测试结果在一个有趣的官方网站的状态,使公司声誉下降。其他危险包括:
打破您的database
因此,在我们的团队中,我们有一个专门的手工测试产品现场。
发布于 2020-12-02 17:41:12
根据部门/环境/项目的设置方式,您可能没有所有可用的最佳选项,但理想情况下,您不希望在生产中进行测试。
我要说的是,人们的普遍愿望是尽可能频繁地使用假数据,并将其用于覆盖现实世界的场景。如果您的prod信任和设置与您的测试环境不同,那么请做艰苦的工作,以确保您的测试环境配置尽可能匹配prod。如果您使用CI工具,这更容易实现,但是无论您的设置是什么,都需要遵守纪律。
当测试运行时,将取决于某些事情。
。
您也可以将测试安排为定期运行,但这通常表明测试花费的时间太长。努力创建快速测试,以便在某个时候打开与CI工具集成的大门。并行化会有所帮助,但您最大的收获将来自使用cy.request()来执行重复任务,如登录,以及使用cy.intercept()进行存根响应,而不是等待服务。
https://stackoverflow.com/questions/65110733
复制相似问题