在angularjs中使用protator进行单元测试时,点击超链接
click on hyperlinks in unit testing using protactor in angularjs
我是angularjs单元测试的新手。我从:
https://github.com/angular/protractor/blob/master/docs/tutorial.md。
我想点击超链接,但我不知道怎么才能做到这一点。
下面是我的代码:<li ng-repeat="menu in sidebarLinks" ng-if="menu.visible == true " ng-class="{active: isActive('/{{menu.action}}')}">
<a ng-href="#/{{menu.action}}" title="{{menu.name}}" ng-click="loadSubmenus(menu.action)" ng-class="{active: isActive('/{{menu.action}}')}">
<div class="icon {{menu.icon}}" ng-class="{active: isActive('/{{menu.action}}')}"></div>
<span>{{menu.name}} </span>
</a>
</li>
在单元测试中:
describe('Protractor Demo App', function() {
browser.driver.get('https://localhost:8443/login.html');
browser.driver.findElement(by.id('name')).sendKeys('test');
browser.driver.findElement(by.id('password')).sendKeys('test');
browser.driver.findElement(by.id('login')).click();
});
登录后url为https://localhost:8443/#/dash
点击链接后url应为https://localhost:8443/#/hypera
由于您的链接在您的机器上本地运行,因此无法为其他人工作,因此我只能告诉您最好的方法。
如果你正在处理超链接,你需要得到你用'login'设置的元素。我没有在你的HTML片段中看到它,所以我不能给你正确的路径。
如果它是一个基本的超链接,你可以很容易地找到它,使用如下命令:
element(by.linkText('login')).click()
如果你的登录按钮的文本确实是'login'。如果它是其他东西,比如按钮,您需要找到确切的元素,它看起来像:
element(by.css('span[class="login"]')).click()
如果你的登录按钮在HTML页面的'span'标签下
相关文章:
- 制作一个不带HTML a标记但在动画播放完毕后指向其他页面的超链接
- 单击超链接时,如何使用Google Maps API v3缩放地图
- 用超链接替换URLS
- 使用JavaScript从超链接加载时的默认下拉值
- Hammer.js阻止在Android Webview中点击超链接
- 将超链接添加到“;标题“;标记文本
- 文本建议的超链接
- 用Javascript按钮替换Javascript超链接
- 删除默认的ui超链接行为
- 谷歌将广告超链接映射到国家标记
- 如何在点击超链接时调用fullcalendar回调
- 单击“禁用其他超链接”
- 在表格单元格中查找超链接
- Angular.js单元/集成测试-触发链接功能
- Xlxs.js的“l"单元格超链接对象选项工作
- 如何在引导数据表中创建超链接或可单击的单元格
- javascript中网格视图单元格的超链接
- 在angularjs中使用protator进行单元测试时,点击超链接
- 将文本和超链接图像添加到表格单元格
- 如何使用office-js以编程方式向工作表中的单元格添加超链接