使用vscode写golang的一些大坑(单元测试、goimports、接口实现)

这篇具有很好参考价值的文章主要介绍了使用vscode写golang的一些大坑(单元测试、goimports、接口实现)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

之前使用的是goland,定位代码、代码补全、代码测试、git版本管理一应俱全,使用方便,但是奈何内存占用太大,平时使用的的项目又比较多,所以决定转战vscode。

在使用vscode开发的过程,目前碰到了三个问题:文章来源地址https://www.toymoban.com/news/detail-456508.html

  1. 查看源码时,无法根据接口定义查找到所有的实现。
  2. goland的imports顺序是可以设置的,而vscode只能用goimports的残废设置,不会自动分组
    • go的imports顺序在goland中可以通过 设置-Editor-Go-Imports对引入进行配置。
    • 我理想的go引入分组是:标准库-本地包-golang包-第三方(包括重命名的)-公司包。(其实goland也做不到)
    • 所以,我目前定下一个小目标,闲下来时开发一个vscode的插件,功能是当文件保存时自动分组imports(base on Group Imports for Go)打算自己fork做一个,然后也给源插件提个pull request。
  3. 在公司使用golang进行开发,需要单元测试保证代码质量。
    • 由于单元测试有的函数需要mock,一部分的mock工具在go test时需要使用 -gcflags=-N -l的运行标识表明运行不需要重排序。
    • 但是由于vscode使用的test工具在运行时也会设置 build-flags,有可能会覆盖用户设置的标识(github有相关的话题:vscode设置gcflags无效的问题),所以一个很奇怪的点是,明明复制go test指令到bash可以直接运行,但是t’m’d点Test方法隔壁的箭头就是不能运行。
      解决:
    • 所以我也很t’m无语,目前用vscode就只能先点箭头,然后复制指令到bash运行了。

到了这里,关于使用vscode写golang的一些大坑(单元测试、goimports、接口实现)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Golang 单元测试

    前言 单元测试是通过编写测试函数来完成的,这些函数位于_test.go文件中 步骤 要创建一个单元测试,你需要遵循以下步骤: 在与要测试的代码相同的包中创建一个新的文件,文件名以_test.go结尾 导入 testing 包 编写测试函数,函数名以 Test 开头,接受一个 *testing.T 类型的参数

    2024年01月16日
    浏览(23)
  • Golang单元测试举例

    cal.go  cal_test.go 说明:再GoLand中,要运行测试哪个函数可以自行选择 测试文件名必须以_test.go结尾; 测试方法的开头必须是Testxxx()  monster.go  monster_test.go

    2024年02月10日
    浏览(29)
  • GoLang 单元测试打桩和 mock

    目录 什么是 mock 变量打桩 接口方法/Redis 函数/方法打桩 包函数 成员方法 MySQL sqlmock sqlite mock gorm http mock 源码地址 单测基础        单元测试,顾名思义对某个单元函数进行测试,被测函数本身中用到的变量、函数、资源不应被测试代码依赖,所谓 mock,就是想办法通过 “虚

    2024年02月02日
    浏览(29)
  • ChatGPT生成单元测试实践(Golang)

    目前gpt本质上是续写,所以在待测函数定义清晰的情况下,单元测试可以适当依赖它进行生成。 收益是什么: 辅助生成测试用例测试代码,降低单元测试编写的心智成本 辅助code review,帮助发现代码显式/潜在问题 本文测试环境: gpt: gpt-3.5-turbo go:go 1.17 本文实践场景:企业

    2023年04月20日
    浏览(29)
  • 通过Mock玩转Golang单元测试!

    如果项目中没有单元测试,对于刚刚开始或者说是规模还小的项目来说,效率可能还不错。但是一旦项目变得复杂起来,每次新增功能或对旧功能的改动都要重新手动测试一遍所有场景,费时费力,而且还有可能因为疏忽导致漏掉一些覆盖不到的点。在这个基础上,单元测试

    2024年02月05日
    浏览(33)
  • 嵌入式单元测试工具Tessy的一些测试技巧

    最近做了一个平台项目,需要进行动态代码测试,入门了嵌入式单元测试工具Tessy,总结了一些简单的测试技巧。 当前网上的教程普遍只写内容概要,真正入手还得自己认真摸索一番。为此,特意总结了一些Tessy测试技巧以供有缘人参考。 提几个Tessy工具使用的问题。 1.如何

    2023年04月17日
    浏览(40)
  • Golang单元测试与Goroutine详解 | 并发、MPG模式及CPU利用

    深入探讨Golang中单元测试方法及Goroutine的使用。了解并发与并行概念,MPG模式以及CPU相关函数的应用。解决协程并行中的资源竞争问题。

    2024年02月10日
    浏览(30)
  • vscode上对python进行单元测试

    1 在settings.json中添加如下 -s后的参数代表启动路径 -p 代表测试文件pattern 2 创建测试文件 as_test.py 注意函数名要以\\\'test_\\\'开头

    2024年01月20日
    浏览(36)
  • 单元测试、模块测试、web接口测试

    然而在功能的实现代码中并没有“单元”,也没有“模块”;只有函数、类和方法。先来分别看看它们 的定义: 单元测试(Unit testing),是指对软件中的最小可测试单元进行检查和验证。通常该代码块单独和孤立 的,如果您的测试使用了一些外部资源,如网络或数据库,它

    2024年02月06日
    浏览(29)
  • 7、单元测试--测试RestFul 接口

    – 测试用例类使用@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT)修饰。 – 测试用例类会接收容器依赖注入TestRestTemplate这个实例变量。 – 测试方法可通过TestRestTemplate来调用RESTful接口的方法。 测试用例应该定义在和被测试类位于同一个包位置。 解释: 注意点1: 涉及注解:

    2024年02月14日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包