Protractor(angular定制的e2e)的简易入门
这周项目终于上了e2e的测试,之前一直都没有测试的概念。
感谢我的领导和同志引入这样的理念和思想。
多的不说。
具体的环境搭建可以参考 http://jackhu.top/article/5607fa9d10f611091d0933c3
我就具体说说用的一些方法和经验吧
browser.getTitle()
//获取文件标题 就是html中titile的文字
element(by.css('.className'))
//以class名字获取
element(by.id('idName'))
//以id名字获取
element(by.model('modelName'))
//以Angular中ng-model绑定的名字获取
element(by.binding(‘bindingname'))
//查找绑定了指定名的元素
element(by.repeater('article in articleList'))
//查找指定repeater中的元素
element(by.exactRepeater('article in articleList'))
//准确的查找一个repeater,常用来判断是否存在
element.all(by. options('c for c in colors'))
//准确查找一个ng-options
element.all(by. tagName('div'))
//准确查找标签div标签
element.all() //一般会输出一个数组
last() //点选最后一个
firt() //点选第一个
get() //选择数组中的一个,括号里是下标的值。 get(0)
count() //统计
each() //用于循环输出
filter() //筛选
element.$('div') 查找element下子元素div
element.(by.css('.className')).$(‘.className1’) 查找className孩子里有className1样式的元素
element.(by.css('.className')).$$(‘.className1’) 查找className孩子甚至孩子的孩子里有className1样式的元素
element(by.binding('person.name').isPresent() //判断元素是否存在
by.id('foo').isEnabled() //元素是否disabled
by.id('foo'). isSelected() //元素是否选中
element.getAttribute('value') //获取一个元素的属性
getCssValue().indexOf('color: #000000') //获取css的值
getTagName()//获取标签的值
element.click() //点击动作
element.sendKeys() //元素输入值
element.getText() //获取元素的文字
element.getSize //获取尺寸
调试
browser.pause()
//调试 输入repl 可以打出需要调试的命令
//ctrl+c 两次退出
更多详见 http://www.protractortest.org/#/api
Protractor(angular定制的e2e)的简易入门的更多相关文章
- 不用搭环境的10分钟AngularJS指令简易入门01(含例子)
不用搭环境的10分钟AngularJS指令简易入门01(含例子) `#不用搭环境系列AngularJS教程01,前端新手也可以轻松入坑~阅读本文大概需要10分钟~` AngularJS的指令是一大特色 ...
- 机器学习简易入门(四)- logistic回归
摘要:使用logistic回归来预测某个人的入学申请是否会被接受 声明:(本文的内容非原创,但经过本人翻译和总结而来,转载请注明出处) 本文内容来源:https://www.dataquest.io/ ...
- Pandas简易入门(二)
目录: 处理缺失数据 制作透视图 删除含空数据的行和列 多行索引 使用apply函数 本节主要介绍如何处理缺失的数据,可以参考原文:https://www. ...
- Web压力测试工具 LoadRunner12.x简易入门教程--(一)回放与录制
LoadRunner12.x简易入门教程--(一)回放与录制 今天在这里分享一下LoadRunner12.x版本的入门使用方法,希望对刚接触LoadRunner的童鞋有所帮助. LoadRun ...
- JNI简易入门
JNI简介 JNI(Java Native Interface)是JDK的一部分,提供了若干API实现了Java和其他语言的通信(主要是C/C++).JNI主要用于以下场景: 贴近硬件底层的功能,Ja ...
- crontab简易入门
前言 crontab是Unix和Linux用于设置周期性被执行的指令,是互联网很常用的技术,很多任务都会设置在crontab循环执行,如果不使用crontab,那么任务就是常驻程序,这对你的程序要求比 ...
- Golang项目的配置管理——Viper简易入门配置
Golang项目的配置管理--Viper简易入门配置 What is Viper? From:https://github.com/spf13/viper Viper is a complete co ...
- MyCAT简易入门
MyCAT是mysql中间件,前身是阿里大名鼎鼎的Cobar,Cobar在开源了一段时间后,不了了之.于是MyCAT扛起了这面大旗,在大数据时代,其重要性愈发彰显.这篇文章主要是MyCAT的入门部署. ...
- T-SQL语句简易入门(第一课)
在微软官方,有一篇介绍T-SQL语句的教程,非常好理解,完全可以帮助新手入门,了解常用SQL语句的使用语法,而且又不涉及较为复杂的操作.不用安装示例数据库AdventureWorks.下面是教程里内容 ...
随机推荐
- bzoj 3111 蚂蚁 动态规划
题目描述 在一个 n*m 的棋盘上,每个格子有一个权值,初始时,在某个格子的顶点处一只面朝北的蚂蚁,我们只知道它的行走路线是如何转弯,却不知道每次转弯前走了多长. 蚂蚁转弯是有一定特点的,即它的转弯序 ...
- 身为多年的ubuntu用户。。。
在这之前 说是多年也没有多年,事实上也就两年.. 不得不说一句,终于承受不住不稳定之重了... 个人觉得开始还是从centos开始比较好,比如说现在的我.. 之前看过的不知道在哪里的文章,谈论的是ub ...
- [04]JS获取文件大小方法
</pre><pre name="code" class="html"><input id="file" ty ...
- gdb 记录临时变量
gdb ./pgm set logging file log set logging on ... set logging off gdb ./pgm | tee -a log ... file a. ...
- cocos2d programming guide 翻译 引导页(完结)
http://bbs.tairan.com/article-25-1.html Cocos2d官方入门指导 原文地址:http://www.cocos2d-iphone.org/wiki/doku. ...
- Profile 的翻译
最近要翻译一个英文网站的单词,正宗的英文网站总是有很多单词让我烦恼,这就是其中一个. 特地转一篇文章,对我大有帮助. 计算机中常用的 Profile 该如何理解? 我认为 Profile 即可作名词又 ...
- Ubuntu14.04安装配置LAMP环境(php5.6)
sudo apt-get install python-software-properties sudo apt-get update sudo apt-get install vim sudo ap ...
- DRF的版本和认证
DRF的版本 版本控制是做什么用的, 我们为什么要用 首先我们要知道我们的版本是干嘛用的呢~~大家都知道我们开发项目是有多个版本的~~ 当我们项目越来越更新~版本就越来越多~~我们不可能新的版本出了~ ...
- 树上各种DFS姿势算法笔记
树是指由n个点,n-1条边构成的联通无向图.如果有一棵树,它的每一条边(u,v)都有一个权值l(u,v),我们把这样的树称作带权树. 我们知道对于树上的任意两个点,他们之间的路径是唯一的.对于两个点u ...
- 洛谷 P3955 图书管理员【模拟/思维】
题目描述 图书馆中每本书都有一个图书编码,可以用于快速检索图书,这个图书编码是一个 正整数. 每位借书的读者手中有一个需求码,这个需求码也是一个正整数.如果一本书的图 书编码恰好以读者的需求码结尾,那 ...