简介
GitHub Copilot 是一款 AI 结对程序员,可帮助您更快、更少地编写代码。它从注释和代码中提取上下文,以立即建议单独的行和整个函数。GitHub Copilot 由 GitHub、OpenAI 和 Microsoft 开发的生成式 AI 模型提供支持。它可作为 Visual Studio Code、Visual Studio、Neovim 和 JetBrains 集成开发环境 (IDE) 套件的扩展。
官网地址:https://github.com/features/copilot
如何使用
环境准备
- 科学上网:具备流畅访问 github 官网的网络环境。
- IDE:支持 JetBrains IDEs、Visual Studio 等集成开发环境。
环境安装
1、进入官网github-copilot注册信息。
2、github-copilot 收费 10 美元一个月,需要先填写信用卡信息,但是可以免费试用 30 天,所以可以在 30 天到期前取消续费。
3、准确填写信用卡信息后点击 submit 就完成了。
4、打开 ide,以下以 pycharm 为例,打开 settings -> plugins -> marketplace ,搜索 github copilot 点击 install 后等待安装完成点击 restart ide。
5、安装完插件后,在 pycharm 进行登录,点击 tools -> github copilot -> login to github。
6、点击 copy and open,点击验证码粘贴到弹出的浏览器中,点击 continue 后,点击授权 Authorize GitHub Copilot Plugin。
7、等待 pycharm 加载后就可以使用 github copilot 了。
实践演练
使用说明
- PyCharm 右下方状态栏中,红圈表示 GitHub Copilot 的logo,表示开启 GitHub Copilot 插件。
- 不论是编写代码中的注释,还是一句执行代码,或是一个代码块、一个函数,GitHub Copilot 都会随着你的输入过程,不断提供代码补全建议。
注意事项:
- GitHub Copilot 也可能猜错你打算写的代码,但只要你继续输入,它就会给出新的建议。
- 对于任何给定的输入,GitHub Copilot 可能会提供多种建议。可以根据需求选择要使用的建议,也可以拒绝所有建议。
- 用户可以启用或禁用 GitHub Copilot:单击 PyCharm 右下方状态栏中的状态图标选择启用或禁用 GitHub Copilot 的建议 。
相关快捷键
使用 Copilot 编写一个快速排序
1、输入相关注释以及开头。
2、它会自动开始补全代码。灰色部分是它提示的代码,点击 tab后就可以接收它的建议了。
合并两个列表,并且排序
1、输入注释与要求: 合并两个列表,并且排序
根据提示的需求,一直按tab键,中间会自动产生注释以及实现的代码,以下所有的代码都是自动生成:
def merge_list(list1, list2):# 合并两个列表,并且排序# 1. 定义两个指针,分别指向两个列表的第一个元素p1 = 0p2 = 0# 2. 定义一个新的列表,用于存储合并后的结果result = []# 3. 循环比较两个指针所指向的元素,将较小的元素添加到新的列表中while p1 < len(list1) and p2 < len(list2):if list1[p1] < list2[p2]:result.append(list1[p1])p1 += 1else:result.append(list2[p2])p2 += 1# 4. 将未比较完的列表中的元素添加到新的列表中result += list1[p1:]result += list2[p2:]# 5. 返回新的列表return result
2、编写一个单元测试用例,测试是否实现,编写一个函数名为def test_merge_list():,其他使用自动补全,最终单元测试用例生成的结果为:
def test_merge_list():assert merge_list([1,2,5], [3,4,6]) == [1,2,3,4,5,6]
取消 github coilpot 订阅
这里显示 10 美元是下个月的扣费本月是没有费用产生的。点击右上角头像 -> settings -> billing and plans -> plans and usage 划到下处取消 github coilpot 的订阅。
总结
- Copilot 的环境安装与使用都非常简单,可以把它当作一个在 IDE 中使用的ChatGPT。
- 一些明确的代码逻辑,可以交给它完成。
- Copilot并非所有的输出都是正确的,在使用的过程中,需要适当进行纠错。
注意:Copilot是一个收费软件,如果试用期过后不想继续使用,一定要记得取消订阅
推荐学习
【霍格沃兹测试开发】7天软件测试快速入门带你从零基础/转行/小白/就业/测试用例设计实战
【霍格沃兹测试开发】最新版!Web 自动化测试从入门到精通/ 电子商务产品实战/Selenium (上集)
【霍格沃兹测试开发】最新版!Web 自动化测试从入门到精通/ 电子商务产品实战/Selenium (下集)
【霍格沃兹测试开发】明星讲师精心打造最新Python 教程软件测试开发从业者必学(上集)
【霍格沃兹测试开发】明星讲师精心打造最新Python 教程软件测试开发从业者必学(下集)
【霍格沃兹测试开发】精品课合集/ 自动化测试/ 性能测试/ 精准测试/ 测试左移/ 测试右移/ 人工智能测试
【霍格沃兹测试开发】腾讯/ 百度/ 阿里/ 字节测试专家技术沙龙分享合集/ 精准化测试/ 流量回放/Diff
【霍格沃兹测试开发】Pytest 用例结构/ 编写规范 / 免费分享
【霍格沃兹测试开发】JMeter 实时性能监控平台/ 数据分析展示系统Grafana/Docker 安装
【霍格沃兹测试开发】接口自动化测试的场景有哪些?为什么要做接口自动化测试?如何一键生成测试报告?
【霍格沃兹测试开发】面试技巧指导/ 测试开发能力评级/1V1 模拟面试实战/ 冲刺年薪百万!
【霍格沃兹测试开发】腾讯软件测试能力评级标准/ 要评级表格的联系我
【霍格沃兹测试开发】Pytest 与Allure2 一键生成测试报告/ 测试用例断言/ 数据驱动/ 参数化
【霍格沃兹测试开发】App 功能测试实战快速入门/adb 常用命令/adb 压力测试
【霍格沃兹测试开发】阿里/ 百度/ 腾讯/ 滴滴/ 字节/ 一线大厂面试真题讲解,卷完拿高薪Offer !
【霍格沃兹测试开发】App自动化测试零基础快速入门/Appium/自动化用例录制/参数配置
【霍格沃兹测试开发】如何用Postman 做接口测试,从入门到实战/ 接口抓包(最新最全教程)