'clickSelector'和'hoverSelector'属性不适用于backstopJS

时间:2017-12-18 17:08:01

标签: javascript backstop.js

我正在使用带Chrome引擎的 Backstopjs 。我可以通过传递不同的网址和使用各种属性来截取屏幕截图,但是当我在拍摄屏幕截图之前尝试单击按钮时,点击无法正常工作。

属性“clickSelector”和“hoverSelector”将被忽略,并且不会执行任何操作。

请告诉我如何使用这些属性。

以下是我的backstop.json文件,其中我正在打开google.com并尝试点击“我感觉很幸运”,然后再截取屏幕截图:

``

 {
  "id": "backstop_default",
  "viewports": [
    {
      "label": "iPad",
      "width": 1024,
      "height": 768
    }
  ],
  "onBeforeScript": "chromy/onBefore.js",
  "onReadyScript": "chromy/onReady.js",
  "scenarios": [
    {
      "label": "Google",
      "url": "https://www.google.co.in",
      "referenceUrl": "https://www.google.co.in",
      "readyEvent": "",
      "readySelector": "",
      "delay": 0,
      "hideSelectors": [],
      "clickSelector": "input[name='btnI']",
      "hoverSelector": "input[name='btnI']",
      "removeSelectors": [],
      "postInteractionWait": "",
      "selectors": ["viewport"],
      "selectorExpansion": true,
      "misMatchThreshold" : 0.1,
      "requireSameDimensions": true
    }
  ],
  "paths": {
    "bitmaps_reference": "backstop_data/bitmaps_reference",
    "bitmaps_test": "backstop_data/bitmaps_test",
    "engine_scripts": "backstop_data/engine_scripts",
    "html_report": "backstop_data/html_report",
    "ci_report": "backstop_data/ci_report"
  },
  "report": ["browser"],
  "engine": "chrome",
  "engineFlags": [],
  "engineOptions": {
  "waitTimeout": 120000,
  "chromePath": "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe",
  "chromeFlags": "['--disable-gpu', '--force-device-scale-factor=1']"
},
  "asyncCaptureLimit": 2,
  "asyncCompareLimit": 50,
  "debug": false,
  "debugWindow": true
} 

``

1 个答案:

答案 0 :(得分:0)

尝试将“ postInteractionWait”设置为整数。这表明BackstopJS单击或悬停后要等待多长时间。