使用空手道测试案例场景(特性),我需要与之交互以模拟要在其中编写的签名。
<canvas width="1292" height="596" style="width: 100%; height: 100%; touch-action: none;"></canvas>我试图使用JS绘制一些元素,但它没有标识为签名。我用过这个:
* script('document.getElementsByTagName("canvas")[0].getContext("2d").fillStyle = "green"')
* script('document.getElementsByTagName("canvas")[0].getContext("2d").fillRect(10, 10, 150, 100)')它起作用了,但油漆没有被识别为签名。我有不同的想法--使用路径/移动到/填充javascript:
* script('document.getElementsByTagName("canvas")[0].getContext("2d").fillStyle = "green"')
* script('document.getElementsByTagName("canvas")[0].getContext("2d").beginPath()')
* script('document.getElementsByTagName("canvas")[0].getContext("2d").moveTo(200, 200)')
* script('document.getElementsByTagName("canvas")[0].getContext("2d").fill()')使用此方法,测试已经通过(通过了这些行),但实际上该行尚未写入画布.
你知道怎么模拟这个吗?或者还有其他方法来改变它呢?我的目的是模拟手写签名。
谢谢!
发布于 2021-03-17 16:38:00
我真诚的意见是放弃这个测试,把重点放在你可以测试的应用程序的其他部分上。这可能不值得。还可以考虑要求开发团队在测试模式下禁用UI流的这一部分,这是一种完全合法的测试策略,例如,许多团队都这样做。
如果您使用mouse() API,它在一定程度上支持单击和拖动:https://github.com/intuit/karate/tree/master/karate-core#mouse,这可能是可能的。
但是没有一个领域你会在互联网上得到很多帮助。
https://stackoverflow.com/questions/66675008
复制相似问题