PHP 편집자 Xinyi는 Gorm에 대한 문제를 소개하기 위해 왔습니다. Gorm을 사용하여 데이터베이스 쿼리를 수행할 때 다른 열 순서로 인해 테스트가 실패할 수 있습니다. 이는 Gorm이 쿼리를 수행할 때 구조의 필드 순서에 따라 SQL 문을 생성하기 때문입니다. 쿼리에 특정 열 순서를 지정했지만 구조의 필드 순서가 일치하지 않으면 테스트가 실패합니다. 따라서 데이터베이스 쿼리에 Gorm을 사용할 때 이 문제를 방지하려면 쿼리의 열 순서와 일치하는 구조의 필드 순서에 주의해야 합니다.
내 코드에는 다음 모델이 있습니다.
으아악저는 gorm.DB
结构的 CreateInBatches
방식을 사용하고 있습니다.
단위 테스트에는 go-sqlmock을 사용합니다. 이 모델에서는 삽입 작업만 수행됩니다.
으아악내 테스트 케이스는 create_date
和 update_date
의 순서가 달라서 실패하는 경우가 있습니다.
실패 중 하나는
으아악내 사용 사례에서는 삽입의 열 순서가 중요하지 않습니다. 모든 시나리오를 처리하기 위해 단위 테스트에서 이를 어떻게 처리할 수 있나요?
sqlmock 문서를 여기에서 읽은 후 다음 해결 방법을 얻었습니다.
으아악열과 값을 삭제했습니다. 제 경우에는 create_date
和 update_date
필드에 신경 쓸 필요가 없어서 잘 작동합니다.
위 내용은 Gorm 다른 열 순서 및 테스트 실패의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!