IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> 【python种子项目ppc】保姆级别指导给项目添加测试 -> 正文阅读

[开发工具]【python种子项目ppc】保姆级别指导给项目添加测试

正式的Python专栏第13篇,同学站住,别错过这个从0开始的文章!

前面学委介绍了 pypi-seed优质库快速生成一个项目,然后开发自己的翻译小项目。

这次我们开发函数并编写测试代码项目中持续加测试,可以让程序质量更高,后期改了直接运行测试,更有保障。

对了,还没有安装ppc的直接运行下面命令:

pip install pypi-seed # pip install --upgrade pypi-seed 或者这个命令升级最近ppc
ppc # 运行pypiseed命令行查看使用帮助

在这里插入图片描述

第一步 编写一个函数并实现测试

继续使用前篇项目的代码,复制下面黏贴到:demo.py

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/9/14 10:39 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : demo.py
# @Project : helloworld


from translate import Translator


def translate(text):
    translator = Translator(to_lang="chinese")
    return translator.translate(text)

这个非常简单就是直接调用中文翻译。

这里我们不写main函数了。

第二步编写测试

复制下面代码保存到tests目录,文件名为demo_test.py

# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
import unittest

#导入模块的demo函数
from helloworld import demo 


class DemoTest(unittest.TestCase):
    def test_translate(self):
        expect = "好好学习,天天向上"
        actual = demo.translate("good good study, day day up")
        self.assertNotEqual(expect, actual)
        expect = "好好学习 , 天天向上"
        self.assertEqual(expect, actual)
        print("测试结束,一切顺利")


if __name__ == '__main__':
    unittest.main()

这个测试代码有main函数。

直接运行代码,效果如下:

在这里插入图片描述

这里我们看到“测试结束,一切顺利“。

因为中间出错误,不可能执行到最后一行。

上面的测试代码主要分三步

  • 导入helloworld模块的demo函数
  • 调用demo 函数获取输出到actual变量
  • 调用测试工具的函数校验actual跟expect(预期结果)比对,测试失败则不继续执行,直接报错。

新知识unittest

这是python内置的测试模块。

它就像机器人一样,安装我们指定的测试校验要求,自动执行代码,自动校验,错了会告诉我们(通过运行结果)

编写我们自己开发的函数的测试,分为下面三步

  • 导入unittest模块
  • 实现一个unittest.TestCase子类
  • 编写测试函数

再往上看一看测试代码,回顾一下这个步骤吧。

第三 把测试代码故意改错

这里代码不贴了,读者直接定位测试11行,在expect文本内容添加‘【雷学委】’。

总结

本次我们继续在pypi-seed创建的实战项目中添加测试代码。

代码中的测试很有必要!总不能每次都手工运行main函数。

实际项目会有成百上千个python脚本,导入很多外部模块,这些不可能一个一个编写main函数来进行校验。

还没有安装ppc的可以运行下面命令:

pip install pypi-seed # pip install --upgrade pypi-seed 或者这个命令升级最近ppc
ppc # 运行pypiseed命令行查看使用帮助

ppc还有更多功能,学委本次没有展示的,下次再一一解析!

项目中的其他文件可以参考其他文章:
https://levin.blog.csdn.net/article/details/120214153
https://levin.blog.csdn.net/article/details/116111486

文章都在这些专栏里面,喜欢Python的朋友,请关注学习 十年老将带你做开源项目 or Python基础专栏 or Python入门到精通大专栏

持续学习持续开发,我是雷学委!
编程很有趣,关键是把技术搞透彻讲明白。
创作不易,请关注收藏点赞,或者留下评论打打气!

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-09-20 15:57:56  更:2021-09-20 15:58:49 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 3:21:29-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码