软件测试案例|Python+Selenium+unittest完成对登录页面的自动化测试
通过本实验,可以熟悉对UnitTest测试工具的使用,同时学习如何使用Selenium对网站进行测试,掌握如何通过xpath等方式定位网站元素并提取文字信息,学会利用HTTPTestReport生成直观的测试结果,加强软件测试的技能。

软件测试案例:Python+Selenium+unittest完成对登录页面的自动化测试
01、实验简介
本实验使用Python语言结合Selenium UI测试工具,利用unittest组织测试用例完成自动化测试。实验内容包括熟练使用Python语言和selenium 工具对页面元素进行定位和操作,利用unittest框架编写对登录页面的测试用例,运行测试用例并输出测试报告。
02、实验目的
1) 熟练使用Python语言。
2) 熟悉Selenium UI自动化测试框架。
3) 熟悉页面元素的定位方法。
4)熟悉unittest单元测试框架。
03、实验要求
1. 测试任意网站的登录流程。
2. 至少包含2个测试用例,即正向的和反向的(正确的用户名/密码成功登录,错误的用户名/密码登录失败)对测试用例的编写需要有断言。
3. 将测试用例写在多个 .py 文件中。
4. Unittest测试框架中有setUp 和tearDown。
.setUp:在写测试用例的时候,每次操作其实都是基于打开浏览器输入对应网址这些操作,这个就是执行用例的前置条件。
.tearDown:执行完用例后,为了不影响下一次用例的执行,一般有个数据还原的过程,这就是执行用例的后置条件。(例如:浏览器的关闭/退出)。
5. Unitest批量执行.py 文件中的测试用例。
6. 使用HTMLTestRunner,生成html报告。
04、实验步骤
1.利用PyCharm创建项目
打开PyCharm。
在实验目录下新建项目,得到项目目录结构(如图47所示)。

■ 图47 新项目目录结构
在命令行中利用pip命令安装Selenium(如图48所示)。

■ 图48 安装Selenium
2. 编写测试用例
在项目文件下新建python unit test文件test_success.py。
在其中定义登陆成功的测试用例TestSuccess(如图49所示)。

■ 图49 登陆成功测试用例
在同一目录下新建python unit test文件test_fail.py。
在其中定义登录成功的测试用例TestFail(如图50所示)。

■ 图50 登录失败测试用例
3. 执行测试
单独执行TestSueccess得到测试通过率为100%(如图51所示)。

■ 图51 单独执行TestSuccess
从测试结果可以看出,当我们正确填写网站的用户名和密码时,网站能够正确登录,并在主界面显示对应用户名的欢迎信息。
单独执行TestFail得到测试通过率为100%(如图52所示)。

■ 图52 单独执行TestFail
从测试结果可以看出,当用户名和密码输入错误或不匹配时,网站登陆失败,并能够弹出我们预料到的报错提示。
进一步实现组团执行。
创建TestSuite,并将两个测试用例包含进去。
在外层执行代码以TestSuite的形式运行(如图53所示)。

■ 图53 编辑代码以组团执行
得到组团运行的通过率为100%(两种情况测试均能够通过)(如图54所示)。

■ 图54 测试用例组团运行结果
经过测试用例的单独执行和组团执行,发现网站的登录功能能够正常运行,对正确的用户名密码能够正确登录,对于错误的用户名密码能够报错提示。
4. 生成测试报告
下载HTMLTestReportCN.py文件,并将其放在python安装路径的Lib文件夹下(如图55所示)。

■ 图55 放置HTMLTestRrportCN.py文件
新建runner.py测试文件,利用HTMLTestRrportCN生成相应测试报告(如图56所示)。

■ 图56 生成测试报告
运行文件,可在相应目录下生成测试报告。
打开report文件夹,可以查看生成的HTML测试报告。
用浏览器打开测试报告,查看测试结果(如图57所示)。

通过测试报告,可以很直观的看到测试结果,在用户名与密码正确与错误的情况下,网站都能够通过测试。
05、实验总结
通过本实验,可以熟悉对UnitTest测试工具的使用,同时学习如何使用Selenium对网站进行测试,掌握如何通过xpath等方式定位网站元素并提取文字信息,学会利用HTTPTestReport生成直观的测试结果,加强软件测试的技能。
更多推荐




所有评论(0)