【问题标题】:How to Automate e-signature input using Selenium?如何使用 Selenium 自动化电子签名输入?
【发布时间】:2017-07-26 02:02:12
【问题描述】:

谁能建议在 selenium 中自动输入电子签名的方法是什么?

我尝试使用动作类在画布对象上画一条线。下面是代码:

    Actions actionBuilder=new Actions(driver);          
Action drawOnCanvas=actionBuilder
            .contextClick(canvas_div)
            .moveToElement(wbCanvas,8,8)
            .clickAndHold(wbCanvas)
            .moveByOffset(120, 120)
            .moveByOffset(60,70)
            .moveByOffset(-140,-140)
            .release(canvas_div)
            .build();
    drawOnCanvas.perform();

Selenium 能够识别画布元素。我可以看到鼠标移动,但画布元素上没有绘制任何内容。

手动从电子签名设备获取输入。 下面是元素的 HTML 代码

<div class="col-lg-12 col-md-12 col-sm-12" id="canvas_div">
                            <canvas height="75" class="col-lg-12 col-md-12 col-sm-12" id="eSignatureDialog_canvas" style="border: 1px solid rgb(0, 0, 0); border-image: none;" name="eSignatureDialog_canvas">
                            </canvas>
                        </div>

【问题讨论】:

  • 这是什么“电子签名设备”?它是硬件,是图书馆等吗?这可能取决于设备/库的工作方式,因此最好知道它是哪一个。
  • 它是一个硬件设备。我在捕获签名之前和之后检查了 HTML,但没有任何变化。它是使用Javascript处理的
  • 好吧,告诉我们它是哪个设备怎么样?我们无法读懂你的想法......
  • 黄玉系统公司

标签: javascript java selenium canvas


【解决方案1】:

你的代码看起来不错,也许除了这个:

.contextClick(canvas_div)

...可能是:

.click(wbCanvas)

Here你有一个类似的工作示例。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-20
    • 2019-09-09
    • 1970-01-01
    • 1970-01-01
    • 2011-10-24
    相关资源
    最近更新 更多