这周项目终于上了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)的简易入门的更多相关文章

  1. 不用搭环境的10分钟AngularJS指令简易入门01(含例子)

    不用搭环境的10分钟AngularJS指令简易入门01(含例子) `#不用搭环境系列AngularJS教程01,前端新手也可以轻松入坑~阅读本文大概需要10分钟~` AngularJS的指令是一大特色 ...

  2. 机器学习简易入门(四)- logistic回归

    摘要:使用logistic回归来预测某个人的入学申请是否会被接受 声明:(本文的内容非原创,但经过本人翻译和总结而来,转载请注明出处) 本文内容来源:https://www.dataquest.io/ ...

  3. Pandas简易入门(二)

    目录:     处理缺失数据     制作透视图     删除含空数据的行和列     多行索引     使用apply函数   本节主要介绍如何处理缺失的数据,可以参考原文:https://www. ...

  4. Web压力测试工具 LoadRunner12.x简易入门教程--(一)回放与录制

        LoadRunner12.x简易入门教程--(一)回放与录制 今天在这里分享一下LoadRunner12.x版本的入门使用方法,希望对刚接触LoadRunner的童鞋有所帮助. LoadRun ...

  5. JNI简易入门

    JNI简介 JNI(Java Native Interface)是JDK的一部分,提供了若干API实现了Java和其他语言的通信(主要是C/C++).JNI主要用于以下场景: 贴近硬件底层的功能,Ja ...

  6. crontab简易入门

    前言 crontab是Unix和Linux用于设置周期性被执行的指令,是互联网很常用的技术,很多任务都会设置在crontab循环执行,如果不使用crontab,那么任务就是常驻程序,这对你的程序要求比 ...

  7. Golang项目的配置管理——Viper简易入门配置

    Golang项目的配置管理--Viper简易入门配置 What is Viper? From:https://github.com/spf13/viper Viper is a complete co ...

  8. MyCAT简易入门

    MyCAT是mysql中间件,前身是阿里大名鼎鼎的Cobar,Cobar在开源了一段时间后,不了了之.于是MyCAT扛起了这面大旗,在大数据时代,其重要性愈发彰显.这篇文章主要是MyCAT的入门部署. ...

  9. T-SQL语句简易入门(第一课)

    在微软官方,有一篇介绍T-SQL语句的教程,非常好理解,完全可以帮助新手入门,了解常用SQL语句的使用语法,而且又不涉及较为复杂的操作.不用安装示例数据库AdventureWorks.下面是教程里内容 ...

随机推荐

  1. display 垂直居中

    /* Center slide text vertically */ display: -webkit-box; display: -ms-flexbox; display: -webkit-flex ...

  2. atan 和 atan2

     转自http://blog.csdn.net/chinabinlang/article/details/6802686 atan函数与atan2函数的一点区别 . atan 和 atan2 都是求反 ...

  3. CodeWarrior的map文件详解

    前言 map文件保存了你的整个程序编译链接后的各种信息,包括编译器链接器信息,内存分配信息,对象依赖等,每次编译链接程序后,这个文件都会被覆盖重新生成. 对我来说,它最主要的作用是它详尽的描述了整个程 ...

  4. NuGet Package Manager 实用命令

    Creating Help Pages for ASP.NET Web API Install-Package Microsoft.AspNet.WebApi.HelpPage Install-Pac ...

  5. 创建型设计模式之原型模式(Prototype)

    结构   意图 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象. 适用性 当要实例化的类是在运行时刻指定时,例如,通过动态装载:或者 为了避免创建一个与产品类层次平行的工厂类层次时:或 ...

  6. C语言字节对齐问题详解【转】

    引言 转自:http://www.cnblogs.com/clover-toeic/p/3853132.html 考虑下面的结构体定义: 1 typedef struct{ 2 char c1; 3 ...

  7. Kubernetes监控工具

    #镜像在谷歌上需要FQ#####################################监控工具#当前最新版本 heapster https://github.com/kubernetes/h ...

  8. 委托delegate与Dictionary实现action选择器

    大家一定都有这种情况,1.前台页面信息是通过Ajax请求的方法加载的;2.或者是通过请求本页面加载的;3.请求的页面不仅仅是一个Http请求在 这咱情况下我们一般会加一个action的参数,用于区别是 ...

  9. C#设计模式学习笔记-单例模式(转)

    C#设计模式学习笔记-单例模式 http://www.cnblogs.com/xun126/archive/2011/03/09/1970807.html 最近在学设计模式,学到创建型模式的时候,碰到 ...

  10. MySQL-python install

    Redhat 7.6 yum install python-devel mysql-devel gcc -y pip install MySQL-python==1.2.5