繁体   English   中英

如何在 Jest/Babel 中为我的应用设置默认路径?

[英]How do I set the default path in Jest/Babel for my app?

我正在使用 Jest 为 React 应用程序设置测试。 该应用程序目前有效,但没有测试。

我在 package 的根目录中设置了一个test/文件夹,并成功地按照文档中的sum.test.js示例进行操作。 然后我将test/文件夹放在应用程序代码的目录中 - 在本例中为app/models/test models包含一个名为user.tsx的文件,其中包含一个 function: insertUser

我在app/models/test中创建了一个名为user.test.tsx的文件并放入以下内容

import { insertUser } from "../user.server.tsx";                                                     
                                                                                                     
insertUser(); 

然后我收到以下消息的测试失败:

    Cannot find module '~/utils/db.server' from 'app/models/user.server.ts'

    Require stack:
      app/models/user.server.ts
      app/models/test/insertUser.test.ts

      1 | import type { User } from "@prisma/client";
      2 | import { MatchStatus } from "@prisma/client";
    > 3 | import { db } from "~/utils/db.server";
        | ^
      4 |
      5 | export async function insertUser(email: User["email"]) {
      6 |   return db.user.insert({

      at Resolver._throwModNotFoundError (node_modules/jest-resolve/build/resolver.js:487:11)
      at Object.<anonymous> (app/models/user.server.ts:3:1)
      at Object.<anonymous> (app/models/test/insertUser.test.ts:1:1)

看来我需要告诉 Jest '~' 指向的位置。 我一直在搜索文档,但我不知道该怎么做。 有任何想法吗?

谢谢!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM