【发布时间】:2017-02-23 18:11:41
【问题描述】:
是否可以在 Protractor 中的任何套件运行之前运行一些测试或逻辑流程?
例如,我想将我的 Protractor 测试分解为一系列套件,用于测试我的应用程序的不同方面。假设 Jenkins 将在部署之前运行整个测试套件,但个别开发人员将只运行与他们正在做的工作相关的套件。
但我希望我的大多数套件都能够登录到应用程序,并且我不想在每个套件中重复登录逻辑。有没有办法进行套件前测试,在所有测试运行之前执行诸如登录之类的操作?
我想在我的量角器配置中定义我的套件的地方列出这个,比如
suites: {
'my-profile': [
'./e2e/login/login-as-customer.e2e-spec.js',
'./e2e/my-profile/my-profile-change-password.e2e-spec.js',
'./e2e/my-profile/my-profile-change-username.e2e-spec.js'
],
'my-contacts': [
'./e2e/login/login-as-customer.e2e-spec.js',
'./e2e/my-contacts/add-contact.e2e-spec.js',
'./e2e/my-contacts/remove-contact.e2e-spec.js'
]
}
但问题是,当我们一起运行整个测试套件时,或者如果开发人员想要一起运行多个套件时,我不希望它每次都重新登录。我需要的是某种预套件步骤。
Protractor 可以做到这一点吗?
【问题讨论】:
-
您不能在您的规范中使用
beforeAll()登录? -
我认为这仍然会导致登录发生在每个测试套件之前,即使一起运行也是如此。我说的是在所有测试套件之前这样做,而不是在所有规范之前。
标签: protractor end-to-end