You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在TypeScript中将Cucumber DataTable转换为数组/列表

在TypeScript中处理Cucumber数据表获取列表

在TypeScript版本的Cucumber中,你可以通过DataTable类提供的方法直接获取数据表中的步骤列表,无需像Java那样传入String.class,具体实现如下:

步骤定义示例

首先确保你已经导入了@cucumber/cucumber中的相关模块,然后在步骤函数中接收DataTable参数:

import { When, DataTable } from '@cucumber/cucumber';

When('user select these', function (dataTable: DataTable) {
    // 方式1:通过asLists()获取二维数组后取单列
    const steps = dataTable.asLists()[0];
    // 方式2:通过列名直接获取对应列的数组(更直观)
    // const steps = dataTable.asColumn('Steps');
    
    console.log(steps); // 输出结果:['a', 'b', 'c']
});

关键说明

  • asLists()方法会将数据表转换为二维字符串数组,你的场景是单列数据,因此取数组的第一个元素(索引0)即可得到目标列表。
  • 如果需要通过列名精准获取数据,asColumn('列名')方法会直接返回该列所有值组成的一维数组,代码可读性更高。
  • TypeScript会自动推断数组元素类型,若需明确类型,可添加类型断言:const steps = dataTable.asColumn('Steps') as string[];

内容的提问来源于stack exchange,提问作者Poonam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 09:34:55