陶刚的博客
与你分享我的点滴

Web自动化测试实战(四)

说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家!

目录

四丶unittest模块

1.unittest基本概念

2.unittest基本用法

3.unittest断言

4.unittest命令行接口

5.unittest与selenium

6.Web自动化测试知识点


四丶unittest模块

Web自动化测试实战(三)知识点回顾

1.unittest基本概念

1.什么是是unittest框架?

Unittest单元测试框架是专门用来进行测试的框架

2.主要概念:

test fixture:代表了用例执行前的准备工作和用例执行之后的清理工作。

test case:测试用例,这个相信大家都不陌生。是测试的最小单位,一般检查一组输入的响应(输出)是否符合预期。unittest模块提供了TestCase类来帮助我们创建测试用例;

test suite:经常被翻译成”测试套件”,也有人称为”测试套”,是测试用例或测试套件的集合,一般用来把需要一起执行的用例组合到一起;

test runner:用来执行测试用例并输出测试结果的组件。可以是图形界面或命令行界面;

2.unittest基本用法

1.通过继承unittest.TestCase进行编写,继承unittest.TestCase的类会被框架识别为测试用例。

2.setUpTearDown是用于事前和事后做相关处理动作的,就是前面说的Test Fixture,会在每个测试用例运行前后被框架自动调用

3.所有以test开头的方法会被框架自动识别为测试用例,并自动调用执行,不是以test开头的不会被调用

4.unittest.main()是最简单的测试执行方式

5.调用unittest.main()方法后,继承自unittest.TestCase类的类会被自动识别为测试用例并且被调用。

示例演示

  • 定义一个类继承unittest模块下的TestCase类,并在类中定义测试方法,运行代码执行测试用例

  • 在测试类中定义setUP和tearDown方法,setUP方法则是在执行用例之前执行而tearDown方法则是执行用例结束后执行

  • 创建测试套件,将需要执行的测试用例添加到测试套件中,运行测试用例输出测试报告信息

3.unittest断言

断言是测试用例的核心。我们使用assertEqual()来判断预期结果,用assertTrue()assertFalse来做是非判断。

示例演示

  • 通过assertEqual方法判断两个值(预期值和实际值)是否相等

  • 通过assertTrue方法判断变量是否为True

  • 同理assertFlase方法也是一样

4.unittest命令行接口

unittest支持命令行接口,我们可以在命令行里指定运行具体的测试用例

示例演示

  • 在Terminal终端中输入如下命令执行demo_02模块下的Test类中的测试用例

5.unittest与selenium

前面我们简单学习了unittest的用法,接下来我们将unittest与selenium融合在一起进行web自动化测试

1. Commonlib目录存放通用模块(我们封装的selenium模块)

2.创建Business目录,根据业务创建测试功能模块

3.创建Testcase目录存放测试用例

示例演示

  • unittest与selenium结合实现1号店网站自动化测试登录模块并将测试用例测试结果生成html格式的测试报告,首先需要创建项目目录

  • 将生成测试报告的HTMLTestRunner.py模块以及前面封装的selenium模块拷贝到Commonlib目录下

  • 在Business目录下创建Login.py文件,完成1号店页面的登录操作

  • 接下里则是在Testcase目录下创建testcase.py文件,在文件中编写4个测试用例,通过创建Business目录的Login模块中的Login对象来调用类中方法完成登录功能的自动化测试用例,(这个封装调用太简单就不细说了,直接看代码即可)

  • 第一个test_001测试用例为正确的登录操作,test_002则是不输入用户名和密码进行登录,并根据提示信息元素获取text文本数据进行比较,test_003输入用户名密码不输入,同样是根据提示信息元素获取文本数据进行比较,最后一个test_004也是一样的,只是这个比较的预期值与实际值是不一致的,即所以前面三个测试用例均为预期结果与实际结果一致,最后一个为不一致,最终测试结果为三个pass1个failed

  • 最后在Testcase目录下创建testsuite.py文件,将如上的测试结果通过HTMLTestRunner模块生成html格式的测试报告

  • 运行测试用例,在Testcase目录下成功生成了report.html测试报告

  • 打开report.html查看测试报告

6.Web自动化测试知识点

  • 整个Web自动化测试知识体系如下

赞(5) 打赏
版权声明:本文为CSDN博主「cdtaogang」的原创文章,遵循CC 4.0 BY-NC-SA版权协议,转载请附上原文出处链接及本声明:记录学习生活 » Web自动化测试实战(四)

评论 抢沙发

评论前必须登录!

 

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

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏