我正在使用AVA进行测试。我有2个档案。在file1.spec.js中,我正在创建一个用户,一旦创建了该用户,就会生成并返回一个userId。我需要file2.spec.js中的该userId来测试特定于该用户的其他一些API调用。如何成功导出在file1.spec.js中创建的userId并将其导入到file2.spec.js中?提前致谢!
我尝试了以下方法:
file1.spec.js:
方法:“ POST”, 网址:“ / api / users”, 数据:setupFixture.postUsersAtLocation1 })。catch(err => {console.log(err.response.data); return err.response;});
if (result.status === 200) {
_int.userId = result.data.userId;
场景1: module.exports = {userId,userId1};
场景2: 导出{userId1}; 导出让userId = _int.userId;
file2.spec.js:
从“ ava”导入测试;
从“ ./setup.spec.js”导入设置;
const {userId,userId1} =设置;
var userIdA = userId; var userId1A = userId1;
运行此命令时,它抱怨file2.spec.js在'ava'的导入测试中具有意外的标识符(测试)。如果我删除了“从'./setup.spec.js';中的导入设置”,并在此之后删除了所有内容,它将不再抱怨测试,但是我永远都不会导入变量。
答案 0 :(得分:0)
每个测试文件在新的辅助进程中执行。测试文件不应依赖于首先执行的另一个文件。而是尝试在每个测试文件中使用不同的数据库/表/ ID,然后通过帮助程序共享设置代码(如有必要)。