我在Protractor为我们的网站创建自动化测试。 你必须先登录才能在网站上做任何事情。 我的问题是,对于特定的测试(规范) - 我可以(有)添加' login' - 目前位于Page Object页面。 问题是,当创建一个使用多个测试的健全性测试时(使用' Suite') - 我目前必须登录每个特定的测试,然后在最后注销,以便下一个测试能够正常工作(因为它首先登录)。 什么是正确的方法呢? 一方面,我希望每个测试都能独立工作(首先登录) - 但另一方面 - 在完整性测试中使用它时 - 我想在完整性测试期间只登录和注销一次。
这是conf.js文件中的套件部分:
suites:{
sanity: ['*/AccountSettingsTest.js','*/createApptest.js','*/openSourcePageTest.js','*/whatsNewTest.js']
},
specs: ['*/AccountSettingsTest.js'],
这就是我目前使用登录的方式:
var LoginPage = require('../global/LoginPage');
...
var login = new LoginPage();
...
login.clickLogin();
感谢。
答案 0 :(得分:0)
如果这是您要问的问题,我恐怕没有beforeSuite()
和afterSuite()
。
可能对您有用的一件事是将“登录”部分放入onPrepare()
:
onPrepare: function () {
browser.get("myurl");
return loginPage.login(username, password); // login may also return a promise
},