javascript - 如何在 TestCafe 的通用属性中使用/打印值
问题描述
我想要做的是打印/使用折线属性的值。
<Polyline points="x,y x,y x,y x,y">
我试图用这些方法得到它们:
这是一个实用功能
export const getPointAttribute = async () => {
const polyline = s.polyline;
const polylineData = ClientFunction(() => polyline().attributes, {
dependencies: { polyline }
});
return polylineData
}
这是在测试脚本里面
test('', async (t) => {
console.log(u.getPointAttribute())
}
或者
test('', async (t) => {
console.log(s.polyline.getAttribute('points'));
}
我将我的选择器包括在外部
import * as s from '../utilities/selectors';
但我得到的只是控制台日志中的输出
承诺 { }
或者
ReExecutablePromise { _then: [], _fn: [Function], _taskPromise: null }
任何帮助表示赞赏!
解决方案
如果是ClientFunction 类型(反过来,基于 Promises),您的getPointAttribute
函数将返回作为实例的对象。这就是为什么当您登录时,您会收到这些消息。您需要做的就是在调用 ClientFunction 之前使用关键字。请看以下代码:
polylineData
u.getPointAttribute()
await
const polylineData = ClientFunction(() => polyline().attributes, {
dependencies: { polyline }
});
await polylineData();
参考以下文章获取更多信息https://devexpress.github.io/testcafe/documentation/test-api/obtaining-data-from-the-client/
我还想提一下,你不需要async
在你的getPointAttribute
函数中使用。
推荐阅读
- swift - Swift Codable:使用父键作为值
- node.js - Angular 7:使用 npm 链接添加本地模块
- java - 用 Java 重新创建扫描仪
- php - 如何通过设置的日期和时间自动将电子邮件发送到 PHP 中的多个用户电子邮件
- python - matplotlib:在图形之外添加注释
- ios - Xcode 11 - 没有 iOS 13.1.2 模拟器(只有 13.0)
- arrays - 基于具有组 ID 的向量创建指标矩阵
- request - 有没有办法在 Spring Boot 中将媒体文件作为请求的一部分发送?
- azure - 将 Azure 资源从一个资源组移动到另一个资源组
- c# - 如何确定字符串是否包含此 SpriteFont 无法解析的字符?