javascript - JavaScript:读取 excel 单元格值
问题描述
我正在从事一项自动化测试的任务,我需要访问一个 excel 文件来获取输入数据。
我需要有关如何使用 Javascript 从本地 excel 文件访问特定单元格值的帮助。
我的本地存储中有一个 excel 文件,其单元格“B2”中有“After Life”一词。
目前,我做了两个功能:一个用于导航到所需的页面,另一个用于搜索。但是,由于我不知道如何从本地 excel 文件中导入数据,我为搜索功能手动键入了字符串参数“After Life”。
解决方案
我建议将文件导入为 .csv 并创建一个 ReadStream 以csv-parser
在您的 E2E-Test 中使用和解析它。
const csv = require('csv-parser')
const fs = require('fs')
const results = [];
const findByKey = (key) => {
return new Promise ((resolve, reject) => {
fs.createReadStream('data.csv')
.pipe(csv())
.on('data', (data) => results.push(data))
.on('end', () => {
const searchString = results.forEach((item) => {
return item[key];
});
if (item.key && item.key.length > 0) {
resolve(item.key);
} else {
reject();
}
});
})
}
这样,如果您使用async/await
.
export async function search (searchText) {
const searchString = await findByKey(searchText);
cy.get('.gLFyf').type(searchText + '{enter}');
}
然后像这样使用它:
it('should search After Life', () => {
search('Search String 2');
});
推荐阅读
- python - ImportError:DLL 加载失败:找不到网络名称
- powerbi - 计算 Power BI 中的贡献
- html - 将文本与字体真棒图标对齐
- magento2 - Magento 2.3 在从 magento 2.2.x 升级后停止了所见即所得(Tinymce)编辑器的工作
- java - 如何在没有调试信息的情况下调试代码?
- c# - 由用户在类 c# 中使用 WPF 传递传入变量
- asp.net - 在 Azure AD B2C 中预填充自定义字段的传递值
- javascript - 从 mongodb 检索的子对象作为 javascript 对象不是难以处理的吗?
- scala - 如何让 Scalaz ZIO 变得懒惰?
- python-2.7 - 阅读\修改一个graphql