pytest报错_eclipse提交代码到git

pytest报错_eclipse提交代码到git前言我们每天写完自动化用例后都会提交到git仓库,随着用例的增多,为了保证仓库代码的干净,当有用例新增的时候,我们希望只运行新增的未提交git仓库的用例。pytest-picked插件可以

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

前言

我们每天写完自动化用例后都会提交到 git 仓库,随着用例的增多,为了保证仓库代码的干净,当有用例新增的时候,我们希望只运行新增的未提交 git 仓库的用例。pytest-picked 插件可以实现只运行未提交到git仓库的代码。
 

安装

pip3 install pytest-picked

 

使用示例

$ pytest --picked

$ pytest --picked=first

$ pytest --picked --mode=branch

$ pytest --picked --mode=unstaged  # default

$ pytest --picked --mode=branch --parent-branch=main # if your parent branch differs from "master"

 

–picked 参数

我们在已提交过 git 仓库的用例里面新增了 1 个文件 test_new.py
cd到项目根目录,使用git status查看当前分支状态

> git status

On branch master
Your branch is up to date with 'origin/master'.

Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        new file:   case/test_new.py

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   case/test_new.py

可以看到有1个文件,使用 pytest –picked 运行用例

Changed test files... 1. ['case/test_new.py']
collecting ... 
 case/test_new.py ✓                                                                                                                                                                                      100% ██████████

Results (0.04s):
       1 passed

 

–picked=first

首先运行修改后的测试文件中的测试,然后运行所有未修改的测试
 

–mode=PICKED_MODE

–mode 有2个参数可选 unstaged, branch, 默认是–mode=unstaged

git 文件的2个状态

  • untrack 没加到git里面的新文件
  • unstaged staged:暂存状态, unstage就是未暂存状态,也就是没git add 过的文件
    先弄清楚什么是 untrack 状态,当我们 pycharm 打开 git 项目,新增一个文件的时候,会弹出询问框:是否加到 git 文件
    pytest报错_eclipse提交代码到git
    如果选择是,文件会变绿色,也就是 unstage 状态(没git add 过);选择否,那就是一个新文件,未被加到当前分支的 git 目录里面,文件颜色是棕色。
    git status 查看当前分支的状态,此时会看到 case/test_new2.py 是 Untracked files
> git status

Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        new file:   case/test_new.py

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   case/test_new.py

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        case/test_new2.py

运行 pytest –picked 会默认执行所有的 Untracked 文件和 not staged 文件,默认是–mode=unstaged。

collecting ... 
 case/test_new2.py::test_2 ✓                                                                                                                                                                              50% █████     
 case/test_new.py::test_1 ✓                                                                                                                                                                              100% ██████████

如果我们只需运行当前分支上已经被暂存,但尚未提交的文件(不包含 Untracked files)
运行 pytest --picked --mode=branch, 运行分支上已经被暂存但尚未提交的代码

(pytest_env) ➜  apitest git:(master) ✗ pytest --picked --mode=branch

Changed test files... 1. ['case/test_new.py']
Changed test folders... 0. []
collecting ... 
 case/test_new.py::test_1 ✓                                                                                                                                                                              100% ██████████
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/165617.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 记一次post请求参数太长导致的400报错

    记一次post请求参数太长导致的400报错背景:springboot2.1.1+vue2.6.11+iview3.3.0+axios0.18.1这个接口是接收前台图文编辑器的内容,插入数据库,当接收图文内容的字段过长时,就抛出400网上查了很多解决方案,都是从修改配置方面着手,试过如下:还有说debug源码的,参数格式错的……各种方法试过,大好青春浪费在试错上了。不说了,上答案:只修改了传参方式,结果如下:这里有一个关键,后台传参要用@RequestBody至于原因我就不说了,小伙伴可以自行搜索vueda

    2022年6月1日
    126
  • python循环语句for怎么用_python编程

    python循环语句for怎么用_python编程Python的for循环for语句是Python中执行迭代的两个语句之一,另一个语句是while。如果你对Python的迭代并不是很熟悉的话,Python中的迭代:for、while、break、以及continue语句是一个不错的切入点。Python中,for循环用于遍历一个迭代对象的所有元素。循环内的语句段会针对迭代对象的每一个元素项目都执行一次。暂且可以将迭代对象想象成一个对象集合,我们可以一个个遍历里面的元素。用for循环获取列表元素一、在获取值也获取下标方式一:当在py

    2022年8月12日
    6
  • Oracle 11g安装教程_oracle11g数据库教程

    Oracle 11g安装教程_oracle11g数据库教程11684小编花了一个多小时才把Oracle11g安装折腾好了,其中有些步骤可能很多人不知道怎么选择,本篇文章就为大家介绍下如何安装Oracle11g,11684小编折腾SQLDeveloper花了好长时间,总算搞定了。好了,先总结下安装步骤,希望给后面的朋友提高安装效率,11684分享过来!授权:免费软件类型:国产软件语言:简体中文大小:2.1GB日期:2016-03-23环境:Win…

    2022年9月21日
    2
  • 玩转SpringSession,重要知识点全面剖析!

    点击上方“全栈程序员社区”,星标公众号 重磅干货,第一时间送达 作者:怀瑾握瑜 www.cnblogs.com/lxyit/p/9672097.html 前言 在开始spring-…

    2021年6月26日
    88
  • c语言 自己编程解析 xml,C语言解析.XML文件

    c语言 自己编程解析 xml,C语言解析.XML文件最近手头上有个活在忙,中间很重要的一部分就是用C语言将.XML文件中想要的key和value读出来,与之前已有的值进行比较。核心的.XML文件的格式如下:zzzxxxyyy而我的思路是这样的:1.将整个文件读到一个buf中;2.去掉不需要的头部分;(xml?>)3.采用下降递归的方法,获取到每一个人tag和content;其中用到的结构体有:typedefstructXM…

    2022年7月12日
    19
  • bzoj 2276: [Poi2011]Temperature

    bzoj 2276: [Poi2011]Temperature

    2022年3月7日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号