软测05/18记录一下学习过程|web自动化实战

这篇博客记录了2022/05/18的学习内容,重点在于web自动化实战中的数据驱动基础,包括txt、csv、excel、json、xml和yaml文件的操作。同时介绍了去哪网购票的测试用例与基础项目,详细阐述了测试用例的编写、业务场景覆盖和页面元素分析等关键步骤。
摘要由CSDN通过智能技术生成

2022/05/18学习内容
整理时间:2022/05/19
参考资料:https://www.bilibili.com/video/BV1NM4y1K73T?p=1&spm_id_from=333.851.header_right.history_list.click

进入新阶段-web自动化实战

数据驱动基础

1.txt文件操作与csv文件操作
open_file_t.py
open_file_c.py

1)读取txt文件数据方法
2)“utf-8”格式
3)csv格式:以纯文本方式保存表格数据

# open_file_t.py
# 读取txt文件中数据

f = open("open_file_t.txt", "r", encoding="utf-8")

# 读取数据方法一:readline():读取一行数据
# print(f.readline())

# 读取数据方法二:read():读取文档中所有数据
# print(f.read())

# 读取数据方法三:readlines():读取文档中所有数据,并将数据元素存放至链表中
# 读取数据量较大时,不建议采用该种方法
print(f.readlines())
# open_file_t.txt
lol,timi,rangto
lol timi rangto
英雄联盟,甜美,农业
lol timi rangto
import csv

c = csv.reader(open("open_file_c.csv", "r", encoding="utf-8"))

# 读取数据方法
for cs in c:
    print(cs)
# open_file_t.csv
姓名,性别,年龄
张三,男,18
李四,男,20
王五,女,19

2.Excel文件操作
open_file_e.py
1)Excel与csv区别
2)读取Excel数据步骤

import xlrd

e = xlrd.open_workbook("open_file_e.xlsx")

# 获取sheet
sheet = e.sheet_by_index(0)

# 获取行列
print(sheet.nrows)
print(sheet.ncols)

# 获取第0行数值
# print(sheet.row_values(0))
for i in range(sheet.nrows):
    print(sheet.row_values(i))

# 获取第0列数据
print(sheet.col_values(0))

互联网中数据格式
open_file_j.py
3.JSON文件操作
1)读取JSON文件方法

import json

json_str = open("open_file_j.json", "r", encoding="utf-8").read()
print(json_str)
print(type(json_str))

# 读取json方式:json.loads()--将json字符串转换为python链表
json_ob = json.loads(json_str)
print(json_ob)
print(type(json_ob))
print(type(json_ob[0]))
print(json_ob[0]["name"])

# 读取json方式:json.dumps()--将python链表转换为json字符串
json.dumps(json_ob, ensure_ascii=False)
# open_file_j.json
[{"name":"张三","sex": "男","age": "18"}, {"name":"李四","sex": "男","age": "20"}, {"name":"王五","sex": "女","age": "19"}]

4.XML文件操作:了解即可
open_file_x.py
1)XML
2)读取XML文件方法

try:
    import xml.etree.cElementTree as ET
except ImportError:
    import xml.etree.ElementTree as ET

tree = ET.parse("open_file_x.xml")

root = tree.getroot()
print(root.tag)
print(root.attrib)
print(root.text)

for child in root:
    print(child.tag)
    print(child.attrib)
    print(child.text)
    for son in child:
        print(son.tag)
        print(son.attrib)
        print(son.text)
# open_file_x.xml
<?xml version="1.0" encoding="utf-8" ?>
<bookstore>
        <book category="COOKING">
            <title lang="en">Everyday Italian</title>>
            <author>Giada De Laurentiis</author>>
            <year>2005</year>>
            <price>30.0</price>
        </book>
    <book category="CHILDREN">
            <title lang="en">Harry Potter</title>>
            <author>J K.Rowling</author>>
            <year>2005</year>>
            <price>29.99.0</price>
        </book>
</bookstore>

5.YAML文件操作
open_file_y.py
1)一种将JSON格式与XML格式相结合的文件格式
2)操作实例

import yaml

yaml_str = open("open_file_y.yaml", "r", encoding="utf-8").read()
yaml_ob = yaml.load(yaml_str, Loader=yaml.FullLoader)
print(yaml_ob)
# open_file_y.yaml
{name:"张三",sex: "男",age: "18"}

测试用例与基础项目:去哪网购票

qunaer.py
1.项目计划
2.测试用力撰写
3.测试步骤

1)需求分析
2)业务场景覆盖:查询页面、车次列表页面、订单信息页面
3)业务拆分多个页面:查询页面、车次列表页面、订单信息页面
4)页面元素分析:出发到达日期搜索、立即购买、姓名电话
5)难点分析

from selenium import webdriver
import time
from selenium.webdriver.common.by import By

driver = webdriver.Chrome("chromedriver.exe")

url = "https://train.qunar.com/"

driver.get(url)
driver.maximize_window()

# 进入查询页面-出发、到达、日期、立即搜索
driver.find_element_by_xpath("//*[@name='fromStation']").send_keys("重庆")
time.sleep(2)
driver.find_element_by_xpath("//*[@name='toStation']").send_keys("长沙")
time.sleep(2)
driver.find_element_by_xpath("//*[@name='date']").send_keys("2022-05-20")
time.sleep(2)
driver.find_element_by_xpath("//*[@name='stsSearch']").click()
time.sleep(5)

# 进入车次列表页面
driver.find_element_by_xpath('//*[@id="list_listInfo"]/ul[2]/li[1]/div/div[7]/a[1]').click()

# 进入订单信息页面
driver.find_element_by_xpath("//*[@name='contact_name']").send_keys("JOY")
time.sleep(2)
driver.find_element_by_xpath("//*[@name='contact_phone']").send_keys("123456")

time.sleep(5)
driver.quit()

数据驱动基础|txt/csv/excel
数据驱动基础|json/xml/yaml
测试用例与基础项目

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值