首页 > 其他分享 >Selenium60-使用csv文件

Selenium60-使用csv文件

时间:2022-12-31 13:45:04浏览次数:40  
标签:文件 赛区 py Selenium60 test csv 双创

为什么要使用csv文件格式

  • 问题:
    • 参数化的测试数据存在于py文件里,不利于维护。
  • 方案:
    • 利用外部文件存储测试数据。
  • 文件格式选择csv的原因:
    • csv格式较为通用、简单、方便读取。

什么是csv文件

  • csv文件:
    • 逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。
    • CSV是一种通用的、相对简单的文件格式。

csv文件规则

  • 开头是不留空,以行为单位。
  • 可含或不含列名,含列名则居文件第一行。
  • 一行数据不跨行,无空行。
  • 以半角逗号(即,)作分隔符,列为空也要表达其存在。
  • 列内容如存在半角引号(即"),替换成半角双引号("")转义,即用半角引号(即"")将该字段值包含起来。

准备csv数据文件

  • 新建Directory:testdata
  • 新建文本文档,输入csv格式的数据,另存为UTF-8编码的csv格式文件。

添加赛区csv文件

  • 测试用例_AISE_后台_双创_基础设置_赛区管理_添加赛区.csv

python内置csv模块

  • csv模块中的函数:reader(csvfile, dialect='excel', **fmtparams)
  • 参数:
    • csvfile,必须是支持迭代(Iterator)的对象,可以是文件(file)对象或者列表(list)对象。
    • dialect,编码风格,默认为excel的风格,也就是用逗号(,)分隔。
    • fmtparam,格式化参数,用来覆盖之前dialect对象指定的编码风格。
  • 返回值:
    • reader()返回一个读取器对象,它将迭代给定csv文件中的行。

准备读取csv工具

  • utils包:read_csv.py

路径管理

  • 新建common包
    • pathmanager.py

读取测试数据

  • common包
    • readdata.py

测试脚本

  • test_后台_双创_基础设置_赛区管理_添加赛区_case_v6.py
from common.readdata import rd
……
    @pytest.mark.parametrize("division_name,message",rd.get_data("测试用例_AISE_后台_双创_基础设置_赛区管理_添加赛区.csv"))
    def test_add_division(self,to_division_manager,division_name,message):
……

运行调试脚本

  • 结果:
    C:\Python\Python39\python.exe D:/PycharmProjects/aiseProject2/testcasecode/test_后台_双创_基础设置_赛区管理_添加赛区_case_v6.py
    ============== test session starts collected 10 items==========
    test_后台_双创_基础设置_赛区管理_添加赛区_case_v6.py ..........
    =============== 10 passed in 638.49s (0:10:38) ============
    Process finished with exit code 0

标签:文件,赛区,py,Selenium60,test,csv,双创
From: https://www.cnblogs.com/sean-test/p/17016506.html

相关文章