pytest是python的一个测试框架,主要是用来进行一些小的测试。

在pycharm中,缺省用的是unittest,这里说明如何设置为pytest。

当然,第一部是安装pytest

pip3 install pytest

然后,在pycharm中,files-》settings-》tools=》python integrated tools=》设定default test runner

然后,写一个简单的py程序(记住,test_*.py or *_test.py):

def inc(x):
return x + 1 def test_answer():
assert inc(3) == 5 def test_wcf():
assert inc(3) > 5 def test_hy():
assert inc(3) < 5

  运行后:

C:\Python35\python.exe C:\Users\wcf\AppData\Local\JetBrains\Toolbox\apps\PyCharm-P\ch-0\171.4694.67\helpers\pycharm\_jb_pytest_runner.py --path C:/fitme/work/nltk/test_5.py
Testing started at 18:53 ...
Launching py.test with arguments C:/fitme/work/nltk/test_5.py in C:\fitme\work\nltk
============================= test session starts =============================
platform win32 -- Python 3.5.3, pytest-3.1.3, py-1.4.34, pluggy-0.4.0
rootdir: C:\fitme\work\nltk, inifile:
collected 3 items test_5.py F
test_5.py:3 (test_answer)
def test_answer():
> assert inc(3) == 5
E assert 4 == 5
E + where 4 = inc(3) test_5.py:5: AssertionError
F
test_5.py:6 (test_wcf)
def test_wcf():
> assert inc(3) > 5
E assert 4 > 5
E + where 4 = inc(3) test_5.py:8: AssertionError
. ================================== FAILURES ===================================
_________________________________ test_answer _________________________________ def test_answer():
> assert inc(3) == 5
E assert 4 == 5
E + where 4 = inc(3) test_5.py:5: AssertionError
__________________________________ test_wcf ___________________________________ def test_wcf():
> assert inc(3) > 5
E assert 4 > 5
E + where 4 = inc(3) test_5.py:8: AssertionError
===================== 2 failed, 1 passed in 0.05 seconds ====================== Process finished with exit code 0

 如果只运行pytest,则对当前目录下所有的test_*.py or *_test.py文件都进行测试。

pytest学习(1)的更多相关文章

  1. [转载]pytest学习笔记

    pytest学习笔记(三)   接着上一篇的内容,这里主要讲下参数化,pytest很好的支持了测试函数中变量的参数化 一.pytest的参数化 1.通过命令行来实现参数化 文档中给了一个简单的例子, ...

  2. Pytest学习(三) - setup和teardown的使用

    一.前言 从文章标题可以看出,就是初始化和释放的操作,根据我的java习惯来学习pytest,个人感觉没差太多,理解上也不是很难. 哦,对了,差点跑题了,这个框架是基于Python语言的,在学习的时候 ...

  3. pytest学习笔记

    From: https://blog.csdn.net/gaowg11/article/details/54910974 由于对测试框架了解比较少,所以最近看了下pytest测试框架,对学习心得做个记 ...

  4. pytest 学习笔记一 入门篇

    前言 之前做自动化测试的时候,用的测试框架为Python自带的unittest框架,随着工作的深入,发现了另外一个框架就是pytest (官方地址文档http://www.pytest.org/en/ ...

  5. pytest学习笔记(一)

    这两天在学习pytest,之前有小用到pytest,觉得这个测试框架很灵巧,用在实现接口自动化(pytest+requests)非常的轻便,然后很有兴致的决定学习下,然后又发现了pytest-sele ...

  6. Pytest学习(一)- 入门及基础

    前言 十一也赶上自己刚出院,本想在十一放假前用假期刷完Pytest的,结果被希洛克神话吸引,再次回归毒奶粉,一直奋斗到距离上班还有两天,引导石刷没了,就没了智慧. 当然也没出过神话,结果一怒之下卸载, ...

  7. Pytest学习(二) - 断言的使用

    一.前言 学习pytest总会习惯性的和unittest对比使用,自然就断言pytest和unittest也是有些区别的. 二.断言对比 unittest 断言 assertEqual(a, b) # ...

  8. Pytest学习笔记3-fixture

    前言 个人认为,fixture是pytest最精髓的地方,也是学习pytest必会的知识点. fixture用途 用于执行测试前后的初始化操作,比如打开浏览器.准备测试数据.清除之前的测试数据等等 用 ...

  9. pytest学习笔记(三)

    接着上一篇的内容,这里主要讲下参数化,pytest很好的支持了测试函数中变量的参数化 一.pytest的参数化 1.通过命令行来实现参数化 文档中给了一个简单的例子, test_compute.py ...

  10. pytest学习笔记(二)

    继续文档的第二章 (一)pytest中可以在命令行中静态/动态添加option,这里没什么好讲的,略过... 这里面主要讲下如何试用skip/xfail,还有incremental(包含一些列的测试步 ...

随机推荐

  1. mysql数据库,编码错误解决

    在写代码的过程中,经常会遇见,将中文字符输入到mysql数据库中,但是查看的时候,却发现,中文显示为乱码的情况,让人相当的头疼,今天正好解决了一个这样遇到的问题,所以简单总结一下: 1.首先查看数据库 ...

  2. lintcode-74-第一个错误的代码版本

    74-第一个错误的代码版本 代码库的版本号是从 1 到 n 的整数.某一天,有人提交了错误版本的代码,因此造成自身及之后版本的代码在单元测试中均出错.请找出第一个错误的版本号. 你可以通过 isBad ...

  3. const用法详解(转)

    http://www.cnblogs.com/StudyRush/archive/2010/10/06/1844690.html 面向对象是C++的重要特性. 但是c++在c的基础上新增加的几点优化也 ...

  4. PAT 甲级 1015 Reversible Primes

    https://pintia.cn/problem-sets/994805342720868352/problems/994805495863296000 A reversible prime in ...

  5. mysqli DB封装

    <?php class DB { //私有的属性 private static $dbcon = false; private $host; private $port; private $us ...

  6. JavaScript中的String对象详解

    1.属性 String对象最常用的属性是length,用于返回字符串对象的长度. 2.方法 CharAt(index)   返回字符串对象中指定索引号组成的字符串,位置的有效值为0到字符串的长度减1. ...

  7. delphi Edit 控制最大值,只能输入数字型 控制小数位数

    delphi语言受众多程序员追捧,主要原因之一就是它有很多第三方的控件可供使用.很多资深的delphi程序员都把自己积累的函数.过程等设计成控件,以方便使用,提高开发效率. 本文通过一个只允许输入数字 ...

  8. 2017 Multi-University Training Contest - Team 2 Puzzle

    题目大意: 给定n, m, p.然后按照一个规则往n*m的方格里填数,最后一个方格是空格,然后玩拼图游戏,问能否复原 规则是:把1~n*m-1的排列中的第1,p+1,2*p+1.....个数依次取出来 ...

  9. bootstrap-table 回显选中行,行样式

    { filed:'status', checkbox:true, formatter:function(value,row,index){ if (row.status == 1) //根据行里字段判 ...

  10. 关于label标签的作用

    label标签的定义和用法: <label> 标签为 input 元素定义标注(标记). label 元素不会向用户呈现任何特殊效果.不过,它为鼠标用户改进了可用性.如果您在 label ...