使用量角器检查角度ui路线状态
Check angular ui route state using protractor
我正在使用量角器框架来测试我的角度应用程序。
我可以在e2e测试中检查角度状态吗?
当然,这个想法是使用browser.executeAsyncScript()
来:
- 定位定义了
ng-app
的元素 - 初始化
angular.element
并获取injector
实例 - 获取
$state
服务 - 使用
$state.current.name
获取当前状态的名称
使用UI路由器演示页面的示例工作测试:
describe("Current Angular UI router state", function () {
beforeEach(function () {
browser.get("https://angular-ui.github.io/ui-router/sample/#/");
});
it("should get the current state", function (){
var currentStateName = browser.executeAsyncScript(function(callback) {
var el = document.querySelector("html"); // ng-app is defined on html element in this case
var injector = angular.element(el).injector();
var service = injector.get('$state');
callback(service.current.name);
});
expect(currentStateName).toEqual("home");
});
});
深受这个答案的启发。
相关文章:
- 混合 ui-sref 和 $state.go 在 Angular ui-router 中进行状态转换
- 使用AngularJS中的UI路由器将状态重定向到默认子状态
- 在UI路由器中以抽象状态填充常见视图
- 如何在具有某些 UI 视图的状态中管理工厂单个请求数据
- 带有嵌套状态的Angular ui路由器和后退按钮
- 如何加载嵌套3个状态的UI路由器UI视图模板
- Angular+bootstrap ui,检查当前选项卡是否已处于活动状态
- ui路由器的惰性加载状态
- Angular JS/UI Router:为给定状态禁用指令
- AngularJS UI路由器未进入默认状态
- 您将如何使用JS来组织UI状态
- 角度 UI 状态转换问题
- AngularJS UI状态提供程序解析状态
- Ui路由器,ng重复和Ui状态
- 如何与Redux沟通React组件之间的UI状态变化
- UI状态是否应存储在模型或控制器中
- 用angularjs管理UI状态和动画的正确方法
- 如何在使用$resources时保留UI状态
- 在jquerymobile中,ui状态活动类不用于动态点击处理
- 在不同的 UI 状态之间共享表单数据