接一下来讲一讲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. 打印倒序NxN乘法表

    一.实验要求: 给定任意一个字符N(N>0),然后打印NxN的倒序乘法表. 二.解决问题: #/!bin/bash# #define functionNxN_fun(){ local i=$1 ...

  2. html css的简单学习(三)

    html css的简单学习(三) 前端开发工具:Dreamweaver.Hbuilder.WebStorm.Sublime.PhpStorm...=========================== ...

  3. Codeforces 875C National Property(拓扑排序)

    题目链接  National Property 给定n个单词,字符集为m 现在我们可以把其中某些字母变成大写的.大写字母字典序大于小写字母. 问是否存在一种方案使得给定的n个单词字典序不下降. 首先判 ...

  4. 洛谷——P2176 [USACO14FEB]路障Roadblock

    P2176 [USACO14FEB]路障Roadblock 题目描述 每天早晨,FJ从家中穿过农场走到牛棚.农场由 N 块农田组成,农田通过 M 条双向道路连接,每条路有一定长度.FJ 的房子在 1 ...

  5. Xamarin.Forms的滚动视图ScrollView

    Xamarin.Forms的滚动视图ScrollView   在Xamarin.Forms中,滚动视图ScrollView用来实现长内容的滚动显示.虽然ScrollView的Content属性只能设置 ...

  6. 项目心得——按照指定的日期/时间创建Date对象

    项目心得——按照指定的日期/时间创建Date对象 有时,在做项目中,需要获得指定日期的Date对象,这个指定的日期或者时间可能不是当前的时间.下面讲解两种获取指定日期/时间的Date对象的方法: pa ...

  7. Flink起步安装和使用

    下载安装 下载地址 下载对应操作系统和版本的flink  # 首先确认下Java环境 $ java -version  java version "1.8.0_111" Java( ...

  8. PHP平均小数红包算法

    <?php function RandMoney( $money,$num ){ $arr = array();//存放金额 $total_money = 0;//红包总金额 $thisMone ...

  9. bootstrap-datetimepicker时间控件的使用

    官方文档:http://www.bootcss.com/p/bootstrap-datetimepicker/demo.htm 常规使用: <div class="input-grou ...

  10. 【hibernate】Hibernate中save, saveOrUpdate, persist, merge, update 区别

    Hibernate Save hibernate save()方法能够保存实体到数据库,正如方法名称save这个单词所表明的意思.我们能够在事务之外调用这个方法,这也是我不喜欢使用这个方法保存数据的原 ...