[英]react js jest unit testing
在登錄 function 中有一個 function validateForm,它返回的用戶名和密碼長度應大於零。
function validateForm() {
return username.length > 0 && password.length > 0;
}
使用 jest 單元測試工具
import React from "react";
import Login,{validateForm} from "./Login";
import { render, screen } from '@testing-library/react';
describe('LoginUser',()=>{
test('validate username and password should be greater than 0',()=> {
var username="name";
var password="pass";
expect(validateForm(username.length )).toBeGreaterThan(0);
});
});
TypeError: (0, _Login.validateForm) is not a function 在運行測試用例時遇到錯誤如何解決
看起來您忘記導出它了:
...
export function validateForm() {
return username.length > 0 && password.length > 0;
}
...
但是如果validateForm
是在 Login 組件(函數)的主體內定義的,請考慮將其移出並單獨導出以使該測試正常工作。
// Put outside and export:
export function validateForm() {
return username.length > 0 && password.length > 0;
}
const Login = (props) => {
// And remove from here.
// function validateForm() {
// return username.length > 0 && password.length > 0;
// }
return ...
}
export default Login;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.