标签: browser-testing

puppeteer:在继续下一行之前等待N秒

puppeteer中我想在进入下一行代码之前等待一段确定的时间.

我试图setTimeout在一个评估函数中,但它似乎被忽略了

console.log('before waiting');
await page.evaluate(async() => {
  setTimeout(function(){
      console.log('waiting');
  }, 4000)
});
console.log('after waiting');
Run Code Online (Sandbox Code Playgroud)

此代码不等待,只是在等待之前等待之后写入

你知道怎么做吗?

javascript chromium browser-testing node.js puppeteer

30
推荐指数
5
解决办法
3万
查看次数

如何在Puppeteer中指定浏览器语言

我想es使用Puppeteer 推出一款带有西班牙语的谷歌Chrome浏览器.

我试过puppeteer.launch(args:['--lang=es',...],...)但是没用.

我试过传递环境变量,LANGUAGE=es mocha puppeteer-test.js但它没有用.

我已尝试使用该userDataDir选项并传递带有文件的Preferences文件夹{ "intl": { "accept_languages": "es" } }但浏览器设置 - 语言仍然不显示西班牙语,也window.navigator.languages没有window.navigator.language

我正在使用
Puppeteer 0.11.0
Node 8.4.0
NPM 5.2.0
macOS El Capitan 10.11.6
MacBook Pro Retina,15英寸,2015年中

javascript google-chrome browser-testing google-chrome-headless puppeteer

13
推荐指数
2
解决办法
5331
查看次数

是否可以直接在OS X中运行Windows Phone 8模拟器?

我想在Mobile IE中测试网站.我不需要或者想要加载Windows 8,只需要Windows Phone 8.

我可以直接在Mac上运行Windows Phone 8吗?

macos virtualization ie-mobile browser-testing windows-phone-8

10
推荐指数
1
解决办法
6790
查看次数

Internet Explorer 11在Windows 7和Windows 8.1之间有何不同?

在Windows 7到Windows 8(.1)上,IE11似乎略有不同.我想这是因为某些功能与操作系统有关.

例如,Windows 7开发者预览博客文章中IE11简要提到了SPDY:

在Windows 8.1上,IE11还支持SPDY网络协议

和DRM视频:

在Windows 8.1上,IE11支持最新的媒体流标准,媒体源扩展(MSE)和加密媒体扩展(EME).

Web开发人员需要注意哪些其他差异(尤其是CSS和JS API)?是否值得下载2个独立的虚拟机来测试IE11?

browser windows internet-explorer browser-testing windows-8.1

9
推荐指数
1
解决办法
1万
查看次数

仅针对一项测试在 Cypress 中禁用 Web 安全性

在阅读了有关 Web 安全的 Cypress文档以及何时禁用它之后,我决定我确实需要这样做。有没有办法只为一个特定的测试/测试套件禁用它?我使用的是3.4.1 版,并且正在设置此配置cypress.json- 因此它对所有测试都是全局的。

有没有一种方法可以仅针对一次测试禁用网络安全?谢谢!

automated-tests end-to-end browser-testing cypress

8
推荐指数
1
解决办法
5005
查看次数

如何测试移动设备的网站

我可以使用什么来测试我使用HTML/CSS开发的网站,看看它在iPhone/iPad/Android等移动设备中的外观?Windows上的仿真器/模拟器?我可以安装Android SDK并使用它的模拟器吗?对于Apple的设备,我需要为SDK支付费用吗?我可以用来模仿的任何东西,我只是需要它来进行网站测试而不是应用程序.像www.testiphone.com或iphonetester.com这样的网站似乎不准确

html css mobile-website browser-testing

6
推荐指数
1
解决办法
7476
查看次数

测试框架取代Watin,如果停止维护?

我的印象是Watin不再被维护,并询问哪个框架最适合在.net浏览器中测试网站?

watin automated-tests browser-testing

6
推荐指数
1
解决办法
1318
查看次数

Cypress 与 cy.wait 的良好实践

我有以下测试,用 Cypress 编写。我在前端使用支持 SSR 的 VueJS。\n我的应用程序它\xe2\x80\x99s 是一个 SPA,我正在测试用户单击菜单。

\n\n
before(() => {\n   // mock data etc.\n});\n\nit(\'should check if component render properly without ssr\', () => {\n    cy.visit(\'url\');\n    cy.wait(1000);\n    cy.get(\'.menuElement\').click();\n    cy.get(\'.something\').should($something => {\n        expect($something).to.have.length(10);\n    });\n});\n
Run Code Online (Sandbox Code Playgroud)\n\n

根据 Cypress\xe2\x80\x99 最佳实践,我不应该以这种形式使用 cy.wait。\n但问题是;如果不等待,测试就会失败。我尝试使用:

\n\n
    \n
  • { timeout: 10000 }作为 cy.get 和 cy.visit 中的参数
  • \n
  • 添加了类似的东西.should(\'be.visible\');(等待何时可见)
  • \n
  • 添加了路线cy.wait("@abc")
  • \n
\n\n

但以上都不适合我。

\n\n

请提出一个解决方案。我应该怎么做才能使我的情况一切正常?

\n

javascript testing browser-testing cypress

6
推荐指数
1
解决办法
4102
查看次数

UnhandledPromiseRejectionWarning:错误:协议错误(Runtime.callFunctionOn):目标已关闭。(傀儡师)

我是 Puppeteer 和 Node 的新手,尝试执行以下代码时出现此错误:

'use strict';

const puppeteer = require('puppeteer');
const evalLib = require('./oaa_a11y_evaluation.js');

function evaluateRules() {
  var ruleset = OpenAjax.a11y.RulesetManager.getRuleset("ARIA_STRICT");
  var evaluator_factory = OpenAjax.a11y.EvaluatorFactory.newInstance();
  evaluator_factory.setParameter('ruleset', ruleset);
  evaluator_factory.setFeature('eventProcessing', 'fae-util');
  evaluator_factory.setFeature('groups', 7);
  var evaluator = evaluator_factory.newEvaluator();
  var evaluation = evaluator.evaluate(window.document, document.title, document.location.href);
  // var out = evaluation.toJSON(true);
  return;
}

(async() => {
  const browser = await puppeteer.launch();
  var page = await browser.newPage();
  await page.goto('http://mihirkumar.com/', {waitUntil: 'load'});
  page.evaluate(evaluateRules);
  await browser.close();
})();
Run Code Online (Sandbox Code Playgroud)

以下是错误消息的详细信息:

(node:27876) UnhandledPromiseRejectionWarning: Error: Protocol error (Runtime.callFunctionOn): Target closed.
at …
Run Code Online (Sandbox Code Playgroud)

javascript chromium browser-testing node.js puppeteer

5
推荐指数
2
解决办法
1万
查看次数

如何通过 selenium-webdriver javascript API 设置“debuggerAddress”chromeOption?

Webdriver 中有一个公认的“功能”列表,其中包括“debuggerAddress”。

但是我找不到一种方法来设置这样的选项,既不是在Capabilities类中,也不是在 javascript api 的CromeOptions中。

正如我在几个问题中看到的,“debuggerAddress”选项(或功能?)可以在 Python api 中设置。

我尝试的类似于这个问题,来自节点应用程序

  1. 将应用程序链接到已启动的 webdriver (cromedriver.exe)。这没关系

    webdriver.Builder().usingServer( 'http://localhost:9515' )

  2. 要求 webdriver 不要启动新的 Chrome 实例,而是链接到已经启动的--remote-debugging-port=XXXXXChrome 参数。这应该通过"debuggerAddress"选项/功能来完成,但我无法意识到如何使用 javascript api 来做到这一点。

javascript google-chrome browser-testing selenium-chromedriver selenium-webdriver

4
推荐指数
1
解决办法
5245
查看次数