Selenium webdriver 什么';在e2e测试中,selenium webdriver和代码注入之间的区别是什么?

Selenium webdriver 什么';在e2e测试中,selenium webdriver和代码注入之间的区别是什么?,selenium-webdriver,webdriver,protractor,e2e-testing,nightwatch.js,Selenium Webdriver,Webdriver,Protractor,E2e Testing,Nightwatch.js,当我们提到E2E测试(端到端)时,有许多工具可供我们开始。 不久前,我接触了一些基于selenium webdriver的工具,如wd.js、nightwatch.js和量角器。所有这些都需要selenium服务器,并且可以在e2e测试中很好地工作 人们使用e2e测试的另一种方法是将javascript代码注入一个页面以运行测试,事情可能是这样的 var $ = require('jquery'); var expect = require('expect.js'); var es = requ

当我们提到E2E测试(端到端)时,有许多工具可供我们开始。 不久前,我接触了一些基于
selenium webdriver
的工具,如
wd.js
nightwatch.js
量角器
。所有这些都需要selenium服务器,并且可以在e2e测试中很好地工作

人们使用e2e测试的另一种方法是将javascript代码注入一个页面以运行测试,事情可能是这样的

var $ = require('jquery');
var expect = require('expect.js');
var es = require('event-simulate');

describe('test button click', function () {
  it('should return right number', function (done) {
    var count = Number($('.countButton').eq(0).text());
    es.simulate($('.clickButton').eq(0),'click');
    setTimeout(function(){
      expect(Number($('.countButton').eq(0).text())).to.be(count+1);
      done();
    },500)
  });
});
是的,它使用了一些库,比如
jquery
来获取选择器和
事件模拟
来调度事件

我想知道运行e2e测试的这两种方法之间的区别,比如比较利弊

我现在认为,第二种方式可能会失去浏览器兼容性,例如,某些版本的代码> IE 不支持<代码>鼠标器< /代码>的东西。而且webdriver使用本机api,可能会得到更好的兼容性测试。还有其他的部分来比较它们的利弊吗