接一下来讲一讲api的使用   http://macacajs.github.io/macaca-wd/api/

var _config = {
//本程序的host
host: 'http://test.3dker.cn/'
}
module.exports = _config;

  

var wd = require('webdriver-client')({
platformName: 'desktop',
browserName: 'chrome'
});
var config = require('../configs.js');
describe('macaca desktop 3dker article', function() { this.timeout(5 * 60 * 1000); const driver = wd.initPromiseChain();
const initialURL = config.host + 'article/list'; before(() => {
return driver
.initDriver()
.setWindowSize(1280, 1200);
}); it('#0 should go into macaca', function() {
return driver
.get(initialURL)
.sleep(6000);
}); it('#1 should works with macaca', function() {
return driver
.elementByClassName('search-article')
.sendKeys('aaaa')
.sleep(5000)
.elementByClassName('btn-search')
.click()
.sleep(5000)
.source()
.then(function(html) {
//html.should.containEql('aaaa');
})
.takeScreenshot();
}); it('#2 should go into web', function() {
return driver
.get(initialURL + '?classify=知识分享#atc-select')
.sleep(3000);
}); it('#3 write article', function(){
return driver
.elementByClassName('write')
.click()
.sleep(3000)
.elementByClassName('username')
.sendKeys('username')
.elementByClassName('password')
.sendKeys('pwd')
.elementByClassName('do-login')
.click()
.sleep(3000)
}); after((done) => {
return driver
.quit(done);
});
});

  get(initialURL)---就可以用chrome打开一个页面,

elementByClassName('search-article')--获了一个class名叫search-article的element

sendKeys('aaaa')----接下来是这个对象输入框输入我们想要的值,,,也可以用下面这个方法

或  safeEval('$(".search-article").val("56fa2fa3433e3fb103792fcf50806f54"'))  这个是通过脚本来赋值,因为网站有引用jquery,所有支持jquery,

接下来只要去出发搜索按按钮即可,代码如下

.elementByClassName('btn-search')
     .click()

如下代码,取类名为smoke-base的对象,如果他包含这个class名为 smoke-visible,触发点击事件,关闭弹出层

.elementByClassName('smoke-base')
.hasElementByClassName('smoke-visible')
.safeEval('$(".dialog-buttons button").trigger("click")')

[自动化平台系列] - 初次使用 Macaca-前端自动化测试(2)的更多相关文章

  1. [自动化平台系列] - 初次使用 Macaca-前端自动化测试(1)

    1. 所先看一下官方地址,了解一下这个是不是你想要的测试工具 https://macacajs.github.io/macaca/environment-setup.html 2. 去掉sudo -- ...

  2. [自动化平台系列] - 初次使用 Macaca-前端自动化测试(3)

    1. 如果是一个列表页面,当要触发编辑页面是如何做的呢?其实我测试只要点击第一条数据去编辑就好啦!如果页面结构如下 <li class="myatc-li"> < ...

  3. 前端自动化测试工具doh学习总结(一)

    前言 项目中需要用到前端自动化测试,自己被当作一个探针研究了下目前用的比较多的web自动化测试工具.一开始研究的是的selenium,但由于项目使用了大量的dijit控件,写起testCase来很费劲 ...

  4. Appium+python自动化(四十二)-Appium自动化测试框架综合实践- 寿终正寝完结篇(超详解)

    1.简介 按照上一篇的计划,今天给小伙伴们分享执行测试用例,生成测试报告,以及自动化平台.今天这篇分享讲解完.Appium自动化测试框架就要告一段落了. 2.执行测试用例&报告生成 测试报告, ...

  5. 《自动化平台测试开发-Python测试开发实战》新书出版了

    首先 第一本书,当初在百度阅读初步写了个电子版,刚一上线不久即收到了数百位读者朋友阅读收藏购买,于是顺利成章就出版了纸质书. <软件自动化测试开发>认真看过的读者应该都知道,介绍的主要是自 ...

  6. 前端自动化测试漫长路之——Selenium初探

    引言 最近想解决前端开发或测试中的两个问题:一是界面UI的布局适配,能否在测试的过程中,通过命令操作真机打开相应页面然后截屏,通过对图片识别分类,发现有问题的图片,然后及时修复:二是页面性能分析,很多 ...

  7. AutoMagic-开源自动化平台构建思路

    最近在github上看到AutoMagic自动化平台开源了,一时手痒,就试着搭了一套环境,现在把思路和大家说一说. AutoMagic从其工作分工分两部分: 1:Web端管理平台 管理平台基于Pyth ...

  8. web前端自动化测试/爬虫利器puppeteer介绍

    web前端自动化测试/爬虫利器puppeteer介绍 Intro Chrome59(linux.macos). Chrome60(windows)之后,Chrome自带headless(无界面)模式很 ...

  9. Jenkins自动化构建系列:01敏捷开发、自动化构建与持续集成

    <SVN与TortoiseSVN实战系列>已写完,今天新开一个<Jenkins自动化构建系列>,上周听了Bob Jiang老师的Agile1001公开课,一直想写个总结,这篇关 ...

随机推荐

  1. Spring MVC学习一

    SpringMVC是一个基于DispatcherServlet的MVC框架,每一个请求最先访问的都是DispatcherServlet,DispatcherServlet负责转发每一个Request请 ...

  2. vscode golang配置说明

    一.vscode-go插件安装 go 1.10.2 https://golang.org/dl/ 需要墙 vscode 1.23.1 https://code.visualstudio.com/ vs ...

  3. js、jq平时积累

    1.window.onbeforeunload   =   function(){$(window).scrollTop(0);}  //在即将离开当前页面(刷新或关闭)时执行 JavaScript ...

  4. Codeforces Round #482 (Div. 2)

    D. Kuro and GCD and XOR and SUM 字典树真好玩... 牛老板提供的思路:建1e5个 字典树,每个数插入到以它的因子为根所在的字典树中,这样就实现了整除,当然gcd(k, ...

  5. Gaugecontrol(测量仪器图形控件)

    digital 数字类 circularfull 整圆 circularhalf 半圆 circularquarter 四分之一圆 circularThreeFourth 四分之三圆 linear h ...

  6. Android 防护扫盲篇

    一,已知防护策略 1.不可或缺的混淆 Java 是一种跨平台.解释型语言,Java 源代码编译成的class文件中有大量包含语义的变量名.方法名的信息,很容易被反编译为Java 源代码.为了防止这种现 ...

  7. 网络入侵检测规避工具fragrouter

    网络入侵检测规避工具fragrouter   网络入侵检测系统可以通过拦截数据包,获取内容进而判断是否为恶意数据包.对于传输较大的数据包,通常会采用分片的方式,将大数据包拆分为小数据包进行传输.如果入 ...

  8. android 扩大view的响应区域

    1.Android提供TouchDelegate帮助实现扩大一个很小的view的点击区域 例如:https://developer.android.com/training/gestures/view ...

  9. Android获取窗口可视区域大小: getWindowVisibleDisplayFrame()

    getWindowVisibleDisplayFrame()方法 getWindowVisibleDisplayFrame()是View类下的一个方法,从方法的名字就可以看出,它是用来获取当前窗口可视 ...

  10. HDU 2236 无题II(二分图匹配+二分)

    HDU 2236 无题II 题目链接 思路:行列仅仅能一个,想到二分图,然后二分区间长度,枚举下限.就能求出哪些边是能用的,然后建图跑二分图,假设最大匹配等于n就是符合的 代码: #include & ...