python&selenium自动化测试实战项目

前言

之前的文章说过, 要写一篇自动化实战的文章, 这段时间比较忙再加回家过11一直没有更新博客,今天整理一下实战项目的代码共大家学习。(注:项目是针对我们公司内部系统的测试,只能内部网络访问,外部网络无法访问)

问:

1.外部网络无法访问,代码也无法运行,那还看这个项目有啥用

2.如何学习本项目

3.如何学习自动化测试(python+selenium)

答:

1.其实代码并不重要,希望大家完完整整的看完这个项目后,自己会有思路有想法,学会这个项目的框架结构和设计思想,把这些能应用到自己的项目中,那么目的就达到了(项目中涉及到的一些公共方法是可以单独运行的,大家可以拿来执行用到自己的项目中)

2.首先希望大家带着目标来学习这个项目1. 项目的目录结构(每个目录中存放什么东西)2.项目如何使用框架(本项目使用的是unittest框架)3.设计模式是如何应用在本项目中的(本项目应用page object设计模式)

3.个人而言

1)如果你没有任何的编程基础,建议先学习一门编程语言,包括环境的搭建,自己动手写代码,遇到问题多想多琢磨,这样一定会加深自己的印象。如果你有一定的编程基础那么直接看看python的基础语法和selenium就ok(我的自动化测试经验也有限,可能给不了大家太多的建议 ,当然会的越多越好 呵!)

2)自己动手搭个框架,手写一个实战的项目,这时候你会发现你还有好多东西不会,那么线路就来了,哪里不会就去学哪里,边学边写,直到你的项目完成,再次回味就会发现你会了好多,当然不会的东西更多了因为你的思路慢慢的扩宽了,你会想到无人值守,集成等等的想法

3)可以参加培训机构的培训,说实话现在的培训机构越来越多,个人认为有些机构的老师确实是没什么水准的,因为他们教的是基础没有太多的拔高内容,但是有一点是好了,你可以很系统的学习一系列的自动化知识

ok 说了很多废话,大家不要介意!直接上项目

项目简介

项目名称:**公司电子零售会员系统

项目目的:实现电子零售会员系统项目自动化测试执行

项目版本:v1.0

项目目录

Retail_TestPro
    Docs# 存放项目的相关文档        
        01测试计划
        02测试大纲
        03测试用例
        04测试报告
        05测试进度
        06技术文档
        07测试申请
    Package# 存放第三方插件
        HTMLTestRunner.py
    Retail            
        Config
            __init__.py
            Conf.py# 读配置文件获取项目跟目录路径 并获取所有欲使用的目录文件的路径
            Config.ini# 存放项目跟目录的路径
        Data
            TestData
                __init__.py
                elementDate.xlsx# 存放项目中所有的元素信息及测试数据
                Email_receiver.txt# 存放邮件的接受者信息
        Report# 测试报告
            Image
                Fail# 存放用例执行失败时的截图
                Pass# 存放用例执行成功时的截图
            Log# 存放用例执行过程中的log信息
            TestReport# 存放测试用例执行完成后生成的测试报告
        Test_case# 测试用例信息
            Models # 存放一些公共方法
                Doconfini.py# 读配置文件
                Doexcel.py# 读excel文件
                Driver.py# 存放driver
                Log.py# 生成log
                Myunit.py# 继承unittest.Testcase
                Sendmail.py# 发送邮件
                Strhandle.py# 字符串处理
                Tcinfo.py# 测试用例基本信息
                Testreport.py# 测试报告
            Page_obj# 测试模块
                Activerule_page.py
                Base_page.py
                Company_page.py
                Createrule_page.py
                Memberquery_page.py
                Modifypw_page.py
                Pointquery_page.py
                ActiveRuleTc.py
                CompanyQueryTc.py
                CreateRuleTc.py
                LoginTc.py
                MemberQueryTc.py
                ModifyPwTc.py
                PointQueryTc.py
        runTc.py# 执行测试用例                            

项目环境

本版

python 36

pip insatll selenium

PyCharm 2017.2.4
Windows 10 10.0

HTMLTestRunner.py

项目框架

unittest单元测试框架

pageobject 设计模式

UI对象库思想

项目设计

1.一个模块(被测项目的页面)对应一个py文件及一个测试类(测试文件)

2.每一个测试页面(系统的页面)中存储页面元素及此页面中涉及到的功能

3.每一个用例组合在一个测试类里面生成一个py文件

项目目标

我们在写自动化测试项目的时候一定要想好你的脚本都要哪些功能,页面元素平凡改动的时候是否需要大批量的修改脚本,及测试不同数据时是否也要修改脚本,那么能想到这些我们的初始目标差不多就有了

1. 生成测试用例执行结果报告

2.生成测试用例执行日志

3.用例执行失败或者执行完成后自动发送邮件报告

4. 用例执行失败或者成功时截取图片

5.数据驱动(读取测试数据,减少脚本维护成本)

项目代码

config.ini # 存放项目跟路径

1

2

[project]

project_path = D:\Petrochina_Retail_Test_Project

 conf.py

elementData.xlsx # 存放所有的测试数据及元素

一个excel文件,不方便贴里面内容(先过,别管里面是啥了  哈哈 后面再找吧)

mail_receiver.txt# 存放邮件接收者的账号 , 可以添加多个账号以‘,’号分割

**@qq.com 

公共方法models下面的文件:

doconfini.py

 1 '''
 2 Code description:read conf file
 3 Create time:
 4 Developer:
 5 '''
 6 
 7 import logging
 8 import configparser
 9 from retail.config.conf import *
10 from retail.test_case.models.log import Logger
11 
12 log = Logger(__name__, CmdLevel=logging.INFO, FileLevel=logging.INFO)
13 class DoConfIni(object):
14 
15     def __init__(self):
16         """
17 
18         :param filename:
19         """
20         self.cf = configparser.ConfigParser()
21     
22     # 从ini文件中读数据
23     def getConfValue(self,filename,section,name):
24         """
25 
26         :param config:
27        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值