复杂业务案例的跨应用自动测试

问题描述 投票:0回答:1

我几乎没有为不同用户设计的网络应用程序,具有不同的数据库。这些应用程序可以独立工作,但存在一些应用程序通信的复杂场景。 假设我们有 3 个应用程序供 3 组用户使用。

我们有一个业务流程,其中组 1 的用户在应用程序 1 中创建某些内容(我们称之为项目),然后用户 2 也可以在应用程序 2 中看到该项目。

他/她可以使用应用程序 2 向该项目添加一些内容。然后,用户 3 只能使用应用程序 3,您可以在其中验证项目已创建并且一切都已就位,他可以在应用程序 3 中看到它并进行一些操作更多变化。

我想以某种方式自动化这个端到端测试,但不确定我应该采用什么方法。我可以单独测试每个应用程序(API 测试、一些使用 selenium/playwright 的 UI 测试等),但是当涉及到更复杂的“跨应用程序”场景时,我有点迷失了。 有没有好的做法/标准/工具可以做到这一点?

testing automation automated-tests
1个回答
0
投票

这是一个范围相当广泛的“一根绳子有多长”类型的问题,但我很乐意就如何处理这个问题提供一些建议。

首先是测试范围的问题。如果您正在处理项目边界内的测试,则更模块化的测试(例如单元、集成和较小的功能测试)是关键,一些 E2E 取决于您的目标。这都是测试时的标准内容。

然而,对于跨边界测试,我倾向于在大部分覆盖范围中使用端到端测试,因为这跨越了一个边界并进入另一个边界。对我来说,我会使用 PlayWright 作为我的谈话工具,但用 Selenium 或任何其他你喜欢的工具来填充它。

在进行这种形式的测试时,我喜欢将其范围限定为以用户为中心的测试,其中每个用户都将对其各自的部分进行测试,即 user1 可以创建 x 并验证其是否正确完成等。

如果您希望跨多个用户创建更长的全流程测试,这也可以。使用 Playwright,您可以创建多个独立的上下文并为各个用户进行身份验证。因此,在您的情况下, context1 将执行 user1 的操作,然后创建 context2 并且 user2 执行其操作,依此类推。

https://playwright.dev/docs/browser-contexts

尽管如此,由于您没有提到的工具或语言,我不会用剧作家的 JS 模型来烦您。

总而言之,确实有很多方法可以实现这一点,但你的目标是非常可行和普遍的。如果您决定使用某种工具或有具体的实施问题,请务必提出,我随时可以提供帮助。

希望这能让您安心,因为这是可能的! :)

© www.soinside.com 2019 - 2024. All rights reserved.