【发布时间】:2017-09-01 18:04:41
【问题描述】:
如何在浏览器中运行测试?
我使用 selenium builder 来记住步骤,然后导出 file.js 并在 mocha(npm 测试)中运行它。测试成功,但无法调用浏览器。
如果我导出 file.java 并在 eclipse 中运行它,一切正常,但在 mocha 中我无法调用任何浏览器。
我已经将驱动程序(例如 FF 的 geckodriver)放在给定文件夹中,通过 npm 安装 selenium 服务器等,file.js 中有不同的设置用于浏览器、命令等。但浏览器不会当我在 mocha 中运行测试时出现。 (我正在使用窗户)。
我可以运行由 selenium builder (.json) 编写的测试。之前在命令行中启动了 selenium 服务器;我可以通过 SeInterpreter(没有 selenium builder)运行测试(.json)。但是怎么调用浏览器看步骤,我之前写过呢?
下面是代码示例:
var assert = require('assert');
var wd = require('wd');
chai = require('chai'),
expect = chai.expect,
_ = require('underscore'),
fs = require('fs'),
path = require('path'),
uuid = require('uuid-js');
var VARS = {};
// This assumes that selenium is running at http://127.0.0.1:4444/wd/hub/
var noop = function() {},
b = wd.promiseChainRemote();
describe('Selenium Test Case', function() {
this.timeout(60000);
it('should execute test case without errors', function(done) {
b.chain(function(err) {
done(err);
})
.init({
browserName: 'firefox'
})
.get("https://google.com")
.elementById("lst-ib", function(err, el) {
b.next('clear', el, function(err) {
b.next('type', el, "приветик", noop);
});
})
.elementById("lst-ib", function(err, el) {
b.next('clear', el, function(err) {
b.next('type', el, "приветик", noop);
});
})
.elementByLinkText("Картинки", function(err, el) {
b.next('clickElement', el, noop);
})
.close(function(err) {
done(err);
});
});
});
提前致谢!!!
【问题讨论】:
标签: javascript java node.js mocha.js selenium-builder