我对构建端到端测试的最佳方法有点困惑。
我编写的大多数测试都依赖于其他测试。
即
- 用户需要登录
- 用户需要创建 Foo
- 用户现在可以创建栏
- Bar 需要存在,以便可以明显地对其进行编辑。
您将如何构建测试来考虑到这一点?
最佳答案
我个人会使用 PageObject 模式,这将提高可靠性并使代码在这些情况下更易于维护。 一旦完成,您就可以在 PageObject 类中创建作用于这些页面的不同方法。 例如。
LoginPage
将是一个使用 PageObject 模式的类,并且包含诸如 LogIn()
之类的方法,该方法将返回 HomePage
的类型,其中将是另一个使用 PageObject 模式的类。
我还没有使用 Selenium 对应用程序执行 E2E 测试,因为我认为该工具不是为此而设计的。
您真正想要的是一个执行 BDD 的工具 ( Behaviour Driven Development )。
我在你的帖子中构建你的场景的方式是我会对每个场景进行单独的测试。我需要进行一个测试,以确保我可以成功登录和失败登录。然后我将进行另一个测试,该测试将创建一个用户“Foo”,然后将有一个“静态”用户准备进行编辑。
关于selenium - 构建 e2e 测试的最佳实践有哪些?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28050165/