小编bri*_*oft的帖子

在 Cypress 中测试拖动 Mapbox GL 地图

这个问题类似于以下问题:

  1. 在 Cypress 中测试拖动 Leaflet 地图
  2. Cypress 和 Google 地图拖动移动元素,而不是地图

我希望能够模拟用户单击并拖动以将Mapbox GL JS地图平移一定距离。虽然这看起来是正确的方法,但使用cypress 触发器功能似乎不起作用。对于 Leaflet 链接,使用了一个单独的插件来操作 html 画布。使用 Mapbox 进行平移是否有类似的解决方法?

我在这里创建了一个独立的存储库,其中还有一个针对标记操作的测试: https: //github.com/brianbancroft/example-mapbox-cypress-e2e

这是测试本身:

  it("drags ", () => {
    const map = cy.get("#map");
    map.should("exist");

    const canvas = cy.get(".mapboxgl-canvas");

    map
      .trigger("mouseenter", 700, 250)
      .trigger("mousedown", 700, 250, {
        bubbles: true,
        waitForAnimations: true,
        // which: 1,
        // pageX: 700,
        // pageY: 250,
      })
      // .wait(100)
      .trigger("mousemove", {
        bubbles: true,
        waitForAnimations: true,
        pageX: 550,
        pageY: 250,
        which: 1,
      })
      .wait(100) …
Run Code Online (Sandbox Code Playgroud)

javascript testing e2e-testing mapbox-gl-js cypress

5
推荐指数
0
解决办法
1755
查看次数

无法使用Testcafe拦截页面中的传出AJAX请求

我正在尝试将TestCafe用于客户端javascript库,并且无法通过计数机制捕获测试页负载上的任何传出AJAX请求。

我的尝试涉及使用RequestLogger该库中的对象,涉及使用正则表达式设置第一个参数/\.org/,以捕获使用.org后缀的所有传出图块请求。我认为这是有道理的,因为所有传出的请求都转到openstreetmap.org,目的是获取png地图图块。

我的测试核心如下所示:

import { RequestLogger } from "testcafe";

fixture`Hello World - Leaflet`.page`http://localhost:8080`;

const logger = RequestLogger(/org/, {
  logRequestHeaders: true,
  logResponseHeaders: true
});

test("Test if there's an outgoing network request...", async t => {
  // Do something...
  await t
    .wait(5000)
    .expect(logger.count(() => true))
    .gt(0, "Must detect more than zero outgoing requests to openstreetmap");
});

Run Code Online (Sandbox Code Playgroud)

为了捕获正确的AJAX请求传出计数,我缺少什么吗?

如果有帮助,我制作了一个包含此问题的存储库,以人们无需配置即可尝试解决的方式进行设置:

javascript automated-tests request e2e-testing testcafe

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

选择您希望执行 Google 任务处理程序的服务

我对 Google Cloud Platform 比较陌生,我能够创建应用服务并管理数据库。我正在尝试在 Google Cloud Tasks 中创建一个处理程序(类似于本文档中找到的 NodeJS 示例) 。

但是,文档未能清楚地说明如何将已部署的服务与请求的内容连接起来。必要性要求我的项目中有多个服务(Node 中的一个用于管理休息,Python 中的另一个用于将地理空间数据作为异步任务进行管理)。

我的问题:运行多个服务时,Google Cloud Tasks 如何知道将任务定向到哪个服务?

下面的屏幕截图证明我能够向队列请求任务。

队列中运行的示例任务

google-cloud-platform google-cloud-tasks

0
推荐指数
1
解决办法
371
查看次数