golang mysql 单元测试_Golang-----实现MySQL数据库连接并测试-Go语言中文社区

本文介绍了如何在Golang中建立MySQL数据库连接,并展示了如何为User模型的Adduser方法编写单元测试。首先,定义了utils包,初始化数据库连接。接着,在model包中创建了User结构体和插入用户的方法。最后,编写了测试用例进行方法验证。
摘要由CSDN通过智能技术生成

1.

06adce4cdd46b8730fd99013a02e7314.png

utils 代码

package utils

import (

"database/sql"

_ "github.com/go-sql-driver/mysql"

)

var (

Db *sql.DB

err error

)

func init() {

Db, err=sql.Open("mysql","root:用户名密码@tcp(localhost:3306)/test")

if err != nil{

panic(err.Error())

}

}

55c9ac079bf1bb04c2bcfccfcd0353a4.png

user.go

package model

import (

"goCode/web_db/utils"

"fmt"

)

// User结构体

type User struct {

ID int

Name string

Gender string

Score float32

}

// insert 方法一

func (user *User) Adduser() error {

// 1.写入sql语句

sqlStr := "insert into user (name,gender,score) values(?,?,?)"

//2.预编译

inStmt,err:=utils.Db.Prepare(sqlStr)

if err !=nil{

fmt.Println("预编译出现异常:",err)

return err

}

// 3.执行

_, err1 := inStmt.Exec("Smith","man","85")

if err1 != nil{

fmt.Println("执行出现异常:",err1)

return err

}

return nil

}

user_test.go

51a66369d8b8d5910bf9b594fa828ad4.png

package model

import (

"testing"

"fmt"

)

func TestAdduser(t *testing.T) {

fmt.Println("Test User")

user := &User{}

user.Adduser()

}

ead51a474b63ff9a53f32470f825c92e.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值