构建端到端测试的一些最佳实践是什么?

What are some best practices for structuring e2e tests?

我对构建端到端测试的最佳方式有点困惑。

我编写的大多数测试都依赖于其他测试。

您将如何构建测试以考虑到这一点?

我个人会使用 PageObject 模式,这将提高可靠性并使代码在这些情况下更易于维护。 一旦你有了它,你就可以在你的 PageObject classes 中创建不同的方法来作用于这些页面。 例如。

LoginPage 将是一个使用 PageObject 模式的 class,并且将包含像 LogIn() 这样的方法,这将 return HomePage 的类型,这将是另一个 class 使用 PageObject 模式。

我没有使用 Selenium 在应用程序上执行 E2E 测试,因为我认为该工具不是为此而设计的。

您真正想要的是一个执行 BDD 的工具 (Behaviour Driven Development)。

我在您的 post 中构造您的场景的方式是,我会对每个场景进行单独的测试。我将进行测试以确保我可以成功登录和失败。然后我会进行另一个测试,创建一个用户 'Foo',然后会有一个 'static' 用户准备好编辑。