安装依赖

  1. protractor
npm install -g protractor
  1. karma-jasmine
 npm install --save-dev karma-jasmine
  1. javaJDK

    http://blog.csdn.net/bingiser/article/details/53375282

  2. webdriver-manager

webdriver-manager update

文件

  1. test.js 测试文件
  2. protractor_conf.js protractor配置文件

启动测试

  1. 一个命令窗口
webdriver-manager start
  1. 第二个命令窗口
protractpr protractor_conf.js

protractor api

http://www.protractortest.org/#/api

  1. browser.get('http://baidu.com')导航到当前页面
  2. element找到元素
  3. element.all找到元素集合
  4. by 查找元素
    • by.binding : ng-bind, {
    • by.model : ng-model
    • by.repeater : ng-repeater
    • by.id : id选择器
    • by.css : css选择器
    • Array.get(2) : 选择第2个
  5. click 点击事件
  6. sendKeys 书写内容
  7. 获取信息,判断
    • getText 获取文本
    • getSize 获取尺寸
    • getAttribute 获取属性
    • isEnabled
    • isSelected
    • isDisplayed
  8. getTitle
  9. sleep
  10. brower.wait()等待某元素出现
browser.wait(function(){
    return browser.isElementPresent(by.model("password"));
},20000);

jasmine api

https://jasmine.github.io/2.0/introduction.html

  1. expect 断言
  2. 验证
  • toEqual等于
  • toBe 相当于===
  • toContain包含,用于数组,字符串
  • toBeLessThan 小于,用于数字
  • toBeGreaterThan 大于
  • toMatch 正则匹配
  • toBeNull 与null比较
  • toBeTruthy 与布尔值比较;

其他

  1. 设置浏览器窗口大小位置
 capabilities: {
        'browserName': 'chrome',
        "chromeOptions" : {
            args: ["--window-size=300,300","--window-position=300,300"],
        }
    },
  1. javaJdk和webdriver-manager

应该先安装javaJdk,再执行webdriver-manager update;
3. 文件上传

element(by.name('upload_file')).sendKeys("C:\\img\\a.jpg");

用选择器获取到文件上传的input标签,然后sendKeys().里面是文件的路径,注意目录分隔符,需要先转译才能用即\
4. 清除input标签里的内容用clear
5. 键盘事件还是用sendKeys

posted on 2017-06-28 13:22  下辈子当座桥-李飞  阅读(304)  评论(0编辑  收藏  举报