Javascript 需要在变量中存储到css元素
我正在尝试使我的代码在portractor中更具可读性。 我想将css类存储在一个变量中,并需要在单击方法时访问该变量Javascript 需要在变量中存储到css元素,javascript,css,angularjs,protractor,Javascript,Css,Angularjs,Protractor,我正在尝试使我的代码在portractor中更具可读性。 我想将css类存储在一个变量中,并需要在单击方法时访问该变量 element.all(by.css("div[ng-click=\"setLocation('report_road')\"]")).click(); element.all(by.css("div[ ng-click=\"mapFeedBack.editObject= mapFeedBack.createMapObjectModel();setLocation(mapFe
element.all(by.css("div[ng-click=\"setLocation('report_road')\"]")).click();
element.all(by.css("div[ ng-click=\"mapFeedBack.editObject= mapFeedBack.createMapObjectModel();setLocation(mapFeedBack.noMap?'road_new':'choose_location_road_new/road_new')\"]")).click();
it("test browser should reach report road option",function() //spec2s
{
element.all(by.css("div[ng-click=\"setLocation('report_road')\"]")).click();
expect(browser.getCurrentUrl()).toContain("report_road");
browser.sleep(browser.params.sleeptime);
browser.sleep(browser.params.sleeptime);
});
it("test browser should reach report road missing",function() //spec3
{
element.all(by.css("div[ ng-click=\"mapFeedBack.editObject= mapFeedBack.createMapObjectModel();setLocation(mapFeedBack.noMap?'road_new':'choose_location_road_new/road_new')\"]")).click();
expect(browser.getCurrentUrl()).toContain("choose_location_road_new/road_new");
browser.sleep(browser.params.sleeptime);
browser.sleep(browser.params.sleeptime);
});
因此,我在文件中创建了两个变量:
var road_button ="\"div[ng-click=\"setLocation('report_road')\"]\"";
var road_missing= "\"div[ ng-click=\"mapFeedBack.editObject= mapFeedBack.createMapObjectModel();setLocation(mapFeedBack.noMap?'road_new':'choose_location_road_new/road_new')\"]\"";
并尝试使用该变量访问我的css类:
element.all(by.css(road_button)).click();
element.all(by.css(road_missing)).click();
但是我不能访问这些变量值。你能告诉我正确的方法吗?
谢谢你我想你是在重新发明轮子。您真正需要遵循的是使用页面对象的指导原则。它们不仅可以解决将定位器与测试流和测试场景逻辑分离的问题,还可以使代码更加模块化,并且易于适应应用程序端的无休止的更改 下面是对量角器中页面对象的一个非常实用的介绍: