protractor_conf.js文件:
exports.config = {
directConnect: true,
capabilities: {
'browserName': 'chrome',
"chromeOptions" : {
args: ["--window-size=2000,2000"],
}
},
specs: ['test-organization.js'], //运行的测试文件地址
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 30000
},
};
测试文件:
/**
* Created by lifei on 2017/6/27.
*/
var name= Math.floor(Math.random()*1000011)
function loginFunc(address){ //登录
browser.get(address);
element(by.model("form.username")).sendKeys("admin");
element(by.model("form.password")).sendKeys("admin");
element(by.css("input.loginbtn")).click();
var userName = element(by.binding("user.name")).getText();
expect(userName).toEqual("admin");
}
function save(save){ //点击完成按钮
element(by.cssContainingText("button",save)).click()//完成
browser.wait(function () {
return browser.isElementPresent(element(by.css("button.confirm")));
}, 2000);
element(by.css("button.confirm")).click();
}
describe("user", function(){
beforeEach(function(){
browser.sleep(1000);
})
it("login", function(){
loginFunc("http://localhost:8004/src/#/login")
});
it("orization", function(){
browser.wait(function () {
return browser.isElementPresent(element(by.cssContainingText(".title"," 网络管理 ")));
}, 2000);
element(by.cssContainingText(".title"," 统一配置 ")).click();
})
it("create", function(){
browser.wait(function () {
return browser.isElementPresent(element(by.cssContainingText("button","创建用户")));
}, 2000);
element(by.cssContainingText("button","创建用户")).click();
element(by.model("form.name")).sendKeys(name); //用户名
element(by.model("form.password")).sendKeys("1111"); //密码
element(by.model("form.cpassword")).sendKeys("1111"); //重复密码
element.all(by.repeater("p in projects")).get(2).click(); //选择租户
element(by.cssContainingText("button", "编辑角色")).click();//选择角色
browser.sleep(1000);
element.all(by.repeater("x in roles")).get(4).click();
element(by.cssContainingText("button", "确定")).click();
save("提交");
//验证
var service = element.all(by.repeater("x in $data")).get(0).$$("a").get(0).getText();
expect(service).toEqual("lifei")
});
it("edit", function() {
browser.sleep(2000);
element.all(by.repeater("x in $data")).get(0).$$("a").get(0).click()
element(by.cssContainingText("button", "编辑角色")).click();//选择角色
browser.sleep(1000);
element.all(by.repeater("x in roles")).get(0).click();
element(by.cssContainingText("button", "确定")).click();
element(by.cssContainingText("button","提交")).click();
browser.sleep(2000)
element(by.cssContainingText("button","确定!")).click();
browser.sleep(2000)
element(by.cssContainingText("button","OK")).click();
browser.sleep(2000)
//返回
element(by.cssContainingText("a","组织管理")).click();
service = element.all(by.repeater("x in $data")).get(0).$$("td").get(2).getText();
expect(service).toEqual("testtttt");
});
it("deleteUser", function(){
var number = element.all(by.repeater("x in $data")).count()
expect(number).toBe(1);
element.all(by.repeater("x in $data")).get(3).element(by.css("button.dropdown-toggle")).click();
element.all(by.repeater("x in $data")).get(3).element(by.cssContainingText("a","删除")).click();
browser.sleep(2000)
element(by.cssContainingText("button","确定!")).click();
browser.sleep(2000)
element(by.cssContainingText("button","OK")).click();
var name = element.all(by.repeater("x in $data")).get(0).$$("a").get(0).getText();
expect(name).toEqual("lifei");
})
afterEach(function(){
browser.sleep(1000);
})
})
浙公网安备 33010602011771号