1、前言
在上一篇文章 测试组合生成器-allpairspy 中,作者介绍了 allpairspy 工具,用于进行测试参数的组合。
随后发现,如果每次要对新的参数进行组合,都要打开脚本,编写后再执行,之后还要手动将参数值拷贝到 Excel 表里,还是有些麻烦,在这里应该要如何进行优化,节约不必要的工作量?
本篇将此脚本进行优化,将集成到 Python 的 GUI 工具包(Tkinter),并且可以将结果数据导入到 Excel 和 TXT 文件里。
2、简介
Tkinter(即 tk interface,简称“Tk”)本质上是对 Tcl/Tk 软件包的 Python 接口封装,它是 Python 官方推荐的 GUI 工具包,属于 Python 自带的标准库模块,当安装好 Python 后,就可以直接使用它,而无须另行安装。
作为一款 Python GUI 工具,Tkinter 拥有良好的跨平台性,支持 Windows、Linux、Mac 平台,它传承了 Python 语法简洁、代码易读的基本特点。
3、快速上手
使用 Tkinter GUI 工具包,快速创建自定义界面。
代码如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import tkinter as tk
window = tk.Tk()
# 设置窗口title
window.title('公众号:AllTests软件测试')
# 设置窗口大小:宽x高
window.geometry('400x200')
# 获取电脑屏幕大小
print("电脑分辨率 %dx%d " % (window.winfo_screenwidth(), window.winfo_screenheight()))
# 获取窗口大小,必须先刷新一下屏幕
window.update()
print("窗口分辨率 %dx%d " % (window.winfo_width(), window.winfo_height()))
# 改变背景颜色
window.config(background="#B3B3B3")
# 设置窗口处于顶层
window.attributes('-topmost', True)
# 设置窗口透明度
window.attributes('-alpha', 1)
# 设置窗口被允许最大调整范围
window.maxsize(600, 600)
# 设置窗口被允许最小调整范围
window.minsize(50, 50)
# 更改左上角窗口icon图标
window.iconbitmap('C:/Users/wangmeng/Desktop/mytest/tupian.ico')
# 添加文本内容,并对字体添加相应的格式 font(字体,字号,"字体类型")
tk.Label(window, text="公众号:AllTests软件测试", bg="yellow", fg="red", font=('Times', 15, 'bold italic underline')).place(x=80, y=60)
# 添加按钮,以及按钮的文本,并通过command参数设置关闭窗口的功能
tk.Button(window, text="关闭", command=window.quit).place(x=200, y=120)
# 进入主循环,显示主窗口
window.mainloop()
运行脚本,弹出 GUI 界面。
控制台输出获取到的分辨率。
4、测试组合生成器脚本优化
需求点:一个输入框(将参数组合输入进去)、一个输出框(将参数组合分组后打印出来)、分隔符下拉选择项(用于匹配输入的参数分隔符)、操作按钮(运行、导出Excel、导出TXT、删除、关闭)
代码如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from tkinter import filedialog
from tkinter import ttk, scrolledtext
from tkinter import messagebox
from tkinter import *
from allpairspy import AllPairs
import datetime
import openpyxl
import os
"""
测试参数组合生成器
"""
# 获取桌面路径
def get_path(