CN116974929A - 自动化测试工具构建方法、自动化测试方法及其相关设备 - Google Patents

自动化测试工具构建方法、自动化测试方法及其相关设备 Download PDF

Info

Publication number
CN116974929A
CN116974929A CN202310956493.5A CN202310956493A CN116974929A CN 116974929 A CN116974929 A CN 116974929A CN 202310956493 A CN202310956493 A CN 202310956493A CN 116974929 A CN116974929 A CN 116974929A
Authority
CN
China
Prior art keywords
test
automatic
database
button
result
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310956493.5A
Other languages
English (en)
Inventor
袁梓豪
孙文艳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yuanguang Software Co Ltd
Original Assignee
Yuanguang Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yuanguang Software Co Ltd filed Critical Yuanguang Software Co Ltd
Priority to CN202310956493.5A priority Critical patent/CN116974929A/zh
Publication of CN116974929A publication Critical patent/CN116974929A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请公开一种自动化测试工具构建方法、自动化测试方法及其相关设备,属于自动化测试技术领域。本申请通过GU I窗口界面和数据库连接构建自动化测试工具,自动化测试工具实现了用户输入数据库连接信息、执行自动化测试、显示测试结果和日志查询结果的功能。自动化测试方法利用自动化测试工具提供的功能,实现了响应测试按钮、执行SQL查询语句和显示测试结果的功能,用户只需点击测试按钮,自动化测试工具将自动执行相应的操作,并将结果显示在结果显示窗口上。本申请的自动化测试工具方便用户进行自动化测试,并提供了可视化的方式展示测试结果和日志信息,提高了测试效率和可操作性。

Description

自动化测试工具构建方法、自动化测试方法及其相关设备
技术领域
本申请属于自动化测试技术领域,具体涉及一种自动化测试工具构建方法、装置、计算机设备和存储介质,以及一种自动化测试方法、装置、计算机设备和存储介质。
背景技术
当今工业界和商业领域中,自动化测试已经成为一项日益重要的技术,自动化测试工具不仅可以降低测试成本,还能够提高测试效率,更为重要的是,自动化测试能够发现并准确识别出人工测试难以捕捉到的潜在问题。然而现有的自动化测试工具一般只能应对某个特定平台或者某种特定场景,使用时需要投入大量的人力资源和经费资源。例如,公司内部安全测试使用的测试工具大多需要在不同平台或者数据库上执行不同的操作,因此需要投入大量的人力和物力。
对于现有的自动化测试工具而言,存在以下问题:
1、现有的自动化测试工具不够灵活,只能针对一种或少数特定数据库进行测试,不能满足不同数据库之间的数据互联互通需求,测试效率较低。另外,现有的工具往往无法完成一些SQL语句复杂的查询操作,虽然可以手动输入,但需求更大量和复杂时,缺乏自动实现的支持,导致了工具的效率低下和准确度不足。
2、针对某些复杂业务场景,现有的工具难以进行自动化模拟,仍需大量的人工操作,极大降低了测试的效率。
发明内容
本申请实施例的目的在于提出一种自动化测试工具构建方法、自动化测试方法及其相关设备,以解决传统的自动化测试工具存在的操作繁琐,功能单一,不能满足不同数据库之间的数据互联互通需求,测试效率较低的技术问题。
为了解决上述技术问题,本申请实施例提供一种自动化测试工具构建方法,采用了如下所述的技术方案:
一种自动化测试工具构建方法,包括:
创建GUI窗口界面,并获取用户在GUI窗口界面输入的数据库连接信息;
基于数据库连接信息连接目标数据库,其中,目标数据库为MySQL数据库或Oracle数据库;
在GUI窗口界面上生成测试按钮,并为测试按钮添加匹配的操作事件,其中,操作事件中预先编写有用于实现自动化测试的SQL查询语句,SQL查询语句存储在目标数据库中;
在GUI窗口界面上创建结果显示窗口和日志显示窗口,其中,结果显示窗口用于显示自动化测试结果,日志显示窗口用户日志查询结果。
进一步地,基于数据库连接信息连接目标数据库,具体包括:
将数据库连接信息保存到json文件中;
在GUI窗口界面上生成连接按钮,并为连接按钮添加匹配的操作事件;
响应与连接按钮匹配的操作事件,从json文件中获取数据库连接信息,并基于数据库连接信息连接目标数据库。
进一步地,还包括:
创建集成资源入口页面;
获取用户在集成资源入口页面上传的数据文件。
为了解决上述技术问题,本申请实施例提供一种自动化测试方法,采用了如下所述的技术方案:
一种自动化测试方法,自动化测试方法应用上述的自动化测试工具构建方法构建的自动化测试工具,自动化测试方法包括:
响应测试按钮匹配的操作事件,获取与测试按钮匹配的操作事件对应的SQL查询语句;
执行与测试按钮匹配的操作事件对应的SQL查询语句,得到自动化测试结果;
在结果显示窗口上显示自动化测试结果。
进一步地,执行与测试按钮匹配的操作事件对应的SQL查询语句,得到自动化测试结果,具体包括:
调用cursor对象的execute()方法执行与测试按钮匹配的操作事件对应的SQL查询语句,得到自动化测试结果。
进一步地,还包括:
获取目标数据库中的用户日志表;
获取用户日志表中与自动化测试过程相关的数据字段,得到自动化测试数据字段;
在日志显示窗口显示自动化测试数据字段。
为了解决上述技术问题,本申请实施例还提供一种自动化测试工具构建装置,采用了如下所述的技术方案:
一种自动化测试工具构建装置,包括:
连接信息获取模块,用于创建GUI窗口界面,并获取用户在GUI窗口界面输入的数据库连接信息;
数据库连接模块,用于基于数据库连接信息连接目标数据库,其中,目标数据库为MySQL数据库或Oracle数据库;
测试按钮生成模块,用于在GUI窗口界面上生成测试按钮,并为测试按钮添加匹配的操作事件,其中,操作事件中预先编写有用于实现自动化测试的SQL查询语句,SQL查询语句存储在目标数据库中;
显示窗口生成模块,用于在GUI窗口界面上创建结果显示窗口和日志显示窗口,其中,结果显示窗口用于显示自动化测试结果,日志显示窗口用户日志查询结果。
为了解决上述技术问题,本申请实施例还提供一种自动化测试装置,采用了如下所述的技术方案:
一种自动化测试装置,自动化测试装置应用上述的自动化测试工具构建装置构建的自动化测试工具,自动化测试装置包括:
测试操作响应模块,用于响应测试按钮匹配的操作事件,获取与测试按钮匹配的操作事件对应的SQL查询语句;
SQL语句执行模块,用于执行与测试按钮匹配的操作事件对应的SQL查询语句,得到自动化测试结果;
测试结果显示模块,用于在结果显示窗口上显示自动化测试结果。
为了解决上述技术问题,本申请实施例还提供一种计算机设备,采用了如下所述的技术方案:
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如上述任一项所述的自动化测试工具构建方法或自动化测试方法的步骤。
为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,采用了如下所述的技术方案:
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如上述中任一项所述的自动化测试工具构建方法或自动化测试方法的步骤。
相比与传统的自动化测试工具,本申请的自动化测试工具具有以下技术效果:
1、连接MySQL和Oracle数据库:与传统的测试工具相比,本申请提供了更加通用和广泛的数据库连接方式,用户可以通过本工具轻松连接MySQL和Oracle数据库,兼容性更好,灵活性更强;
2、可视化操作界面:本申请的自动化测试工具提供了基于GUI的用于执行SQL语句等操作的页面,操作界面更加友好,让用户更加方便快捷的使用此工具;
3、多样化的功能设计:本申请的自动化测试工具提供了用于执行SQL语句、查看SQL记录、集成第三方平台、查看用户日志等多种功能,不仅让用户仅仅可以测试自己的程序,还可以轻松集成第三方平台发布的系统,提高了工具的可用性;
4、可扩展性:新的功能需求可轻松移植加入到此GUI中。
相比与传统的自动化测试方法,本申请的自动化测试方法具有以下技术效果:
1、降低测试成本和时间:提供了连接多种数据库的方式和用于执行SQL语句的多种页面,可以降低人工操作的成本和时间,提高测试效率;
2、避免人工错误:提供了多种可视化操作界面,可以方便用户进行相关操作,从而降低因人工操作而导致的错误率,提高测试准确性;
3、多样化的功能设计:提供了多种功能设计,大大提高了工具的可用性,可以适应不同场景的测试需求。
附图说明
为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请可以应用于其中的示例性系统架构图;
图2示出了根据本申请的自动化测试工具构建方法的一个实施例的流程图;
图3示出了根据本申请的自动化测试工具构建方法的另一个实施例的流程图;
图4示出了根据本申请的自动化测试工具构建方法中的数据连接管理工具的结构示意图;
图5示出了根据本申请的根据本申请的自动化测试工具构建方法中的连接信息页签图;
图6示出了根据本申请的根据本申请的自动化测试工具构建方法中的查更新页签图;
图7示出了根据本申请的根据本申请的自动化测试工具构建方法中的用户日志页签图;
图8示出了根据本申请的根据本申请的自动化测试工具构建方法中的第三方平台页签图;
图9示出了根据本申请的自动化测试方法的一个实施例的流程图;
图10示出了根据本申请的自动化测试工具构建装置的一个实施例的结构示意图;
图11示出了根据本申请的自动化测试装置的一个实施例的结构示意图;
图12示出了根据本申请的计算机设备的一个实施例的结构示意图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器,服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
需要说明的是,本申请实施例所提供的自动化测试工具构建方法或自动化测试方法一般由服务器执行,相应地,自动化测试工具构建装置或自动化测试装置一般设置于服务器中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
实施例一
继续参考图2,示出了根据本申请的自动化测试工具构建方法的一个实施例的流程图,所述的自动化测试工具构建方法,包括以下步骤:
S201,创建GUI窗口界面,并获取用户在GUI窗口界面输入的数据库连接信息。
在本实施例中,通过创建GUI窗口界面,用户可以方便地输入数据库连接信息,包括数据库类型(MySQL数据库或Oracle数据库)、主机名、端口号、用户名和密码等。这些信息将用于后续连接目标数据库。
S202,基于数据库连接信息连接目标数据库,其中,目标数据库为MySQL数据库或Oracle数据库。
在本实施例中,根据用户在GUI窗口界面输入的数据库连接信息,自动化测试工具将建立与目标数据库的连接,这样可以确保自动化测试工具能够与目标数据库进行交互,执行SQL查询语句和获取测试结果。
S203,在GUI窗口界面上生成测试按钮,并为测试按钮添加匹配的操作事件,其中,操作事件中预先编写有用于实现自动化测试的SQL查询语句,SQL查询语句存储在目标数据库中。
在本实施例中,在GUI窗口界面上生成测试按钮,用户可以点击该按钮来触发自动化测试的执行。为了实现自动化测试,需要为测试按钮添加匹配的操作事件,即预先编写好的SQL查询语句,这些SQL查询语句将在用户点击测试按钮时被执行,从而完成自动化测试。
S204,在GUI窗口界面上创建结果显示窗口和日志显示窗口,其中,结果显示窗口用于显示自动化测试结果,日志显示窗口用户日志查询结果。
在本实施例中,为了方便用户查看自动化测试的结果和日志信息,自动化测试工具在GUI窗口界面上创建了结果显示窗口和日志显示窗口,结果显示窗口用于显示自动化测试的结果,包括测试通过的用例数量、测试失败的用例数量等。日志显示窗口用于显示日志查询的结果,用户可以通过输入查询条件,查询目标数据库中的日志信息并展示在窗口中。
在上述实施例中,通过GUI窗口界面和数据库连接构建自动化测试工具,实现了用户输入数据库连接信息、执行自动化测试、显示测试结果和日志查询结果的功能,方便用户进行自动化测试,并提供了可视化的方式展示测试结果和日志信息,从而提高测试效率和可操作性。
进一步地,基于数据库连接信息连接目标数据库,具体包括:
将数据库连接信息保存到json文件中;
在GUI窗口界面上生成连接按钮,并为连接按钮添加匹配的操作事件;
响应与连接按钮匹配的操作事件,从json文件中获取数据库连接信息,并基于数据库连接信息连接目标数据库。
在本实施例中,用户在GUI窗口界面上输入数据库连接信息,比如数据库地址、用户名、密码等,这些信息将被保存到一个json文件中,以便后续使用。将数据库连接信息保存到json文件中可以方便地进行持久化存储,并且可以在需要时进行读取和使用。
自动化测试工具在GUI窗口界面上生成一个连接按钮,用户可以点击该按钮来触发连接操作。为了实现连接操作,需要为连接按钮添加匹配的操作事件,即预先编写好的代码逻辑,这些代码逻辑将在用户点击连接按钮时被执行,从而实现连接目标数据库的功能。
当用户点击连接按钮时,自动化测试工具将响应该事件,并执行与连接按钮匹配的操作事件,在这个操作事件中,自动化测试工具将读取之前保存的json文件,获取数据库连接信息,然后根据这些连接信息,自动化测试工具将建立与目标数据库的连接,确保自动化测试工具能够与目标数据库进行交互,执行SQL查询语句和获取测试结果。
进一步地,自动化测试工具构建方法还包括:
创建集成资源入口页面;
获取用户在集成资源入口页面上传的数据文件。
在本实施例中,自动化测试工具需要创建一个集成资源入口页面,用于用户上传数据文件,这个页面可以是一个单独的页面,也可以是自动化测试工具的主界面的一部分,用户可以通过该页面选择并上传数据文件,以供后续的自动化测试使用。
当用户在集成资源入口页面上选择并上传数据文件时,将获取用户上传的数据文件,这个数据文件可以是各种格式的文件,比如CSV文件、Excel文件等,自动化测试工具需要能够识别和处理这些不同格式的数据文件。
在上述实施例中,本申请通过创建集成资源入口页面,获取用户上传的数据文件,用户上传的数据文件可以是本地解析的测试文件,用于批量生成SQL执行语句,通过上述步骤实现了用户上传数据文件和将数据文件存储到数据库的功能,这样可以方便用户提供测试数据,并确保测试数据能够被自动化测试工具使用和存储。
在本申请一种具体的实施例中,参见图3,为了解决上述问题,本申请通过提供用户使用的GUI,将测试中需要使用的SQL语句通过button按钮封装在GUI中,用户使用时既可通过点击对应button自动拼接执行SQL。具体实现过程如下:
1、数据库连接窗口:
通过Python的pyside2库创建GUI窗口,实现数据输入和显示功能。
这个步骤通过使用Python的pyside2库来创建一个GUI窗口,用于输入和显示数据库连接信息,该窗口可以包括一些输入字段,如数据库类型、主机名、端口号、用户名和密码等。用户可以在窗口中输入这些信息,并且可以在窗口中显示已保存的连接信息,这个窗口可以提供一个连接按钮,用户点击后可以进行数据库连接。
2、数据存储:
通过json模块实现数据库连接信息的读取和存储,将连接信息保存在json文件中。
这个步骤使用json模块来读取和存储数据库连接信息,当用户在数据库连接窗口中输入并保存连接信息后,这些信息将被保存在一个json文件中。这个文件可以包含一个字典,其中键是连接名称,值是包含连接信息的字典,通过使用json模块,可以将连接信息保存到文件中,并在需要时读取和使用这些信息。
3、数据库连接:
使用MySQLdb或cx_Oracle模块实现数据库连接和操作,具体链接方式根据输入信息进行判断并连接上相应的数据库。
这个步骤使用MySQLdb或cx_Oracle模块来实现数据库的连接和操作,具体的连接方式取决于用户在数据库连接窗口中输入的信息,根据用户输入的数据库类型、主机名、端口号、用户名和密码等信息,可以通过相应的模块来建立与数据库的连接,连接成功后,可以使用连接对象来执行SQL查询和其他数据库操作。
4、SQL交互:
在GUI中创建button按钮,并添加相应的操作事件,通过在事件中编写SQL查询语句,获取相应结果并在GUI窗口中展示。使用cursor对象的execute()方法实现SQL的执行并返回更新结果。
在GUI中创建按钮,并为每个按钮添加相应的操作事件,当用户点击按钮时,相应的操作事件将被触发。在操作事件中,可以编写SQL查询语句,并使用连接对象的execute()方法来执行查询,执行查询完成后,可以使用cursor对象获取查询结果,并将结果展示在GUI窗口中,这样,用户可以通过点击按钮来执行SQL查询,并在GUI窗口中查看查询结果。
5、用户日志展示:
通过调用系统的用户日志表,获取处理后有价值的日志字段,并在GUI窗口中展示。
通过调用系统的用户日志表,可以获取其中有价值的字段,并在GUI窗口中展示这些信息。这个步骤需要先连接到用户日志表,并执行适当的查询来获取需要展示的字段,查询结果可以通过在GUI窗口中创建相应的控件来展示,如文本框、表格或列表等,用户可以通过查看GUI窗口中展示的用户日志信息来获取相关的日志数据。
6、集成第三方平台资源入口:
创建GUI的集成资源入口页面,通过上传预设格式的Excel文件,将数据自动拼接为插入语句并批量上传到数据库中。
这个步骤创建一个GUI的集成资源入口页面,用户可以通过上传预设格式的Excel文件来将数据自动拼接为插入语句,并批量上传到数据库中。这个步骤需要实现文件上传的功能,可以使用Python的文件处理库来实现,上传的Excel文件可以包含预定义的格式,如特定的列名和数据格式。通过解析Excel文件,可以将数据拼接为插入语句,并使用连接对象的execute()方法来批量插入数据到数据库中。
在本申请另一种具体的实施例中,参见图4至图8,本申请公开了数据连接管理工具,数据连接管理工具5个模块,分别为数据库连接模块、数据查询模块、数据更新模块、用户日志查询模块和第三方平台集成模块。
用户进入程序后,需要在数据库连接信息页签中输入数据库相关信息,包括用户名、密码、实例名称等。选择被测系统平台后,用户可以通过选择数据库类型(MySQL或Oracle)来连接相应的数据库。用户输入完成后,可通过点击“连接”按钮建立与数据库的连接。
连接成功后,用户可以前往查询界面或更新界面页签,通过GUI界面点击对应的button按钮后,程序会自动根据已封装好的SQL语句进行拼接后的查询、更新,用户还可以在查询结果中执行相关操作,例如清空结果表格等。
在查看用户日志页签中,用户可以通过GUI界面查看库中的审计日志表,并以关键字段排列其中的记录。用户还可以使用搜索框快速查找所需的记录。
在集成第三方平台页签中,用户可以上传包含所需数据的Excel文件,并通过GUI界面对数据进行分类、解析并生成模板,导入到第三方资源库中,然后在程序中进行相应测试。
以上实施例是基于pyside2的GUI样式,支持多平台版本切换,支持在数据库类型灵活切换、支持封装SQL语句的自动化测试工具。
相比与传统的自动化测试工具,本申请的自动化测试工具具有以下技术效果:
1、连接MySQL和Oracle数据库:与传统的测试工具相比,本申请提供了更加通用和广泛的数据库连接方式,用户可以通过本工具轻松连接MySQL和Oracle数据库,兼容性更好,灵活性更强;
2、可视化操作界面:本申请的自动化测试工具提供了基于GUI的用于执行SQL语句等操作的页面,操作界面更加友好,让用户更加方便快捷的使用此工具;
3、多样化的功能设计:本申请的自动化测试工具提供了用于执行SQL语句、查看SQL记录、集成第三方平台、查看用户日志等多种功能,不仅让用户仅仅可以测试自己的程序,还可以轻松集成第三方平台发布的系统,提高了工具的可用性;
4、可扩展性:新的功能需求可轻松移植加入到此GUI中。
实施例二
继续参考图9,示出了根据本申请的自动化测试方法的一个实施例的流程图,所述的自动化测试方法应用上述的自动化测试工具构建方法构建的自动化测试工具,自动化测试方法包括:
S301,响应测试按钮匹配的操作事件,获取与测试按钮匹配的操作事件对应的SQL查询语句。
在本实施例中,当用户点击测试按钮时,自动化测试工具将响应该事件,并获取与测试按钮匹配的操作事件对应的SQL查询语句,这些SQL查询语句是事先编写好的,用于执行自动化测试的操作。
S302,执行与测试按钮匹配的操作事件对应的SQL查询语句,得到自动化测试结果。
在本实施例中,根据获取到的SQL查询语句,自动化测试工具将执行这些语句,并从目标数据库中获取相应的测试结果,这些测试结果可能包括查询到的数据、执行结果的状态等。
S303,在结果显示窗口上显示自动化测试结果。
在本实施例中,自动化测试工具将把获取到的自动化测试结果显示在结果显示窗口上,用户可以方便地查看自动化测试的执行结果,包括测试通过的用例数量、测试失败的用例数量等。
在上述实施例中,本申请的自动化测试方法利用自动化测试工具提供的功能,实现了响应测试按钮、执行SQL查询语句和显示测试结果的功能。用户只需点击测试按钮,自动化测试工具将自动执行相应的操作,并将结果显示在结果显示窗口上,这样可以提高测试的效率和准确性,同时也方便用户查看和分析测试结果,从而加快问题的发现和解决。
进一步地,执行与测试按钮匹配的操作事件对应的SQL查询语句,得到自动化测试结果,具体包括:
调用cursor对象的execute()方法执行与测试按钮匹配的操作事件对应的SQL查询语句,得到自动化测试结果。
在本实施例中,在自动化测试工具中,可以使用数据库连接对象的cursor对象来执行SQL查询语句。cursor对象是一个用于执行SQL语句并获取结果的接口,通过调用cursor对象的execute()方法,可以执行与测试按钮匹配的操作事件对应的SQL查询语句。在执行SQL查询语句后,自动化测试工具将得到相应的测试结果。测试结果可以是查询结果的数据集,也可以是执行结果的返回值。
进一步地,自动化测试方法还包括:
获取目标数据库中的用户日志表;
获取用户日志表中与自动化测试过程相关的数据字段,得到自动化测试数据字段;
在日志显示窗口显示自动化测试数据字段。
在本实施例中,在自动化测试过程中,获取目标数据库中的用户日志表,用户日志表是一个记录用户操作和系统事件的表,通常包含了时间戳、操作类型、操作描述等字段,通过获取用户日志表,可以获得用户在系统中执行的各种操作的记录。
在用户日志表中,可能包含了与自动化测试过程相关的数据字段,这些数据字段可以是记录自动化测试过程中的测试操作、测试结果、错误信息等,通过分析用户日志表的结构和内容,可以确定哪些数据字段与自动化测试过程相关。
获取到与自动化测试过程相关的数据字段后,自动化测试工具可以将这些数据字段在日志显示窗口中进行展示。日志显示窗口是一个用于显示系统日志、操作记录和测试结果的界面,通过在日志显示窗口中显示自动化测试数据字段,可以方便用户查看和分析自动化测试过程中的相关信息。
相比与传统的自动化测试方法,本申请的自动化测试方法具有以下技术效果:
1、降低测试成本和时间:提供了连接多种数据库的方式和用于执行SQL语句的多种页面,可以降低人工操作的成本和时间,提高测试效率;
2、避免人工错误:提供了多种可视化操作界面,可以方便用户进行相关操作,从而降低因人工操作而导致的错误率,提高测试准确性;
3、多样化的功能设计:提供了多种功能设计,大大提高了工具的可用性,可以适应不同场景的测试需求。
在本实施例中,自动化测试工具构建方法或自动化测试方法运行于其上的电子设备(例如图1所示的服务器)可以通过有线连接方式或者无线连接方式获取数据或者接收指令。需要指出的是,上述无线连接方式可以包括但不限于3G/4G连接、WiFi连接、蓝牙连接、WiMAX连接、Zigbee连接、UWB(ultra wideband)连接、以及其他现在已知或将来开发的无线连接方式。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,该计算机可读指令可存储于一计算机可读取存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
实施例三
进一步参考图10,作为对上述图2所示方法的实现,本申请提供了一种自动化测试工具构建装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图10所示,本实施例所述的自动化测试工具构建装置400,包括:
连接信息获取模块401,用于创建GUI窗口界面,并获取用户在GUI窗口界面输入的数据库连接信息;
数据库连接模块402,用于基于数据库连接信息连接目标数据库,其中,目标数据库为MySQL数据库或Oracle数据库;
测试按钮生成模块403,用于在GUI窗口界面上生成测试按钮,并为测试按钮添加匹配的操作事件,其中,操作事件中预先编写有用于实现自动化测试的SQL查询语句,SQL查询语句存储在目标数据库中;
显示窗口生成模块404,用于在GUI窗口界面上创建结果显示窗口和日志显示窗口,其中,结果显示窗口用于显示自动化测试结果,日志显示窗口用户日志查询结果。
进一步地,数据库连接模块402,具体包括:
连接信息保存单元,用于将数据库连接信息保存到json文件中;
连接按钮生成单元,用于在GUI窗口界面上生成连接按钮,并为连接按钮添加匹配的操作事件;
连接操作响应单元,用于响应与连接按钮匹配的操作事件,从json文件中获取数据库连接信息,并基于数据库连接信息连接目标数据库。
进一步地,自动化测试工具构建装置400还包括:
资源入口页面创建模块,用于创建集成资源入口页面;
数据文件上传模块,用于获取用户在集成资源入口页面上传的数据文件。
在上述实施例中,本申请公开一种自动化测试工具构建装置,属于自动化测试技术领域。本申请通过GUI窗口界面和数据库连接构建自动化测试工具,自动化测试工具实现了用户输入数据库连接信息、执行自动化测试、显示测试结果和日志查询结果的功能。自动化测试方法利用自动化测试工具提供的功能,实现了响应测试按钮、执行SQL查询语句和显示测试结果的功能,用户只需点击测试按钮,自动化测试工具将自动执行相应的操作,并将结果显示在结果显示窗口上。本申请方便用户进行自动化测试,并提供了可视化的方式展示测试结果和日志信息,从而提高测试效率和可操作性。
实施例四
进一步参考图11,作为对上述图9所示方法的实现,本申请提供了一种自动化测试装置的一个实施例,该装置实施例与图9所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图11所示,本实施例所述的自动化测试装置500,自动化测试装置应用上述的自动化测试工具构建装置构建的自动化测试工具,自动化测试装置包括:
测试操作响应模块501,用于响应测试按钮匹配的操作事件,获取与测试按钮匹配的操作事件对应的SQL查询语句;
SQL语句执行模块502,用于执行与测试按钮匹配的操作事件对应的SQL查询语句,得到自动化测试结果;
测试结果显示模块503,用于在结果显示窗口上显示自动化测试结果。
进一步地,SQL语句执行模块502具体包括:
SQL语句执行单元,用于调用cursor对象的execute()方法执行与测试按钮匹配的操作事件对应的SQL查询语句,得到自动化测试结果。
进一步地,自动化测试装置500还包括:
日志表获取模块,用于获取目标数据库中的用户日志表;
数据字段获取模块,用于获取用户日志表中与自动化测试过程相关的数据字段,得到自动化测试数据字段;
日志显示模块,用于在日志显示窗口显示自动化测试数据字段。
在上述实施例中,本申请公开一种自动化测试方法,属于自动化测试技术领域。本申请通过GUI窗口界面和数据库连接构建自动化测试工具,自动化测试工具实现了用户输入数据库连接信息、执行自动化测试、显示测试结果和日志查询结果的功能。自动化测试方法利用自动化测试工具提供的功能,实现了响应测试按钮、执行SQL查询语句和显示测试结果的功能,用户只需点击测试按钮,自动化测试工具将自动执行相应的操作,并将结果显示在结果显示窗口上。本申请方便用户进行自动化测试,并提供了可视化的方式展示测试结果和日志信息,从而提高测试效率和可操作性。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图12,图12为本实施例计算机设备基本结构框图。
所述计算机设备6包括通过系统总线相互通信连接存储器61、处理器62、网络接口63。需要指出的是,图中仅示出了具有组件61-63的计算机设备6,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable GateArray,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器61至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器61可以是所述计算机设备6的内部存储单元,例如该计算机设备6的硬盘或内存。在另一些实施例中,所述存储器61也可以是所述计算机设备6的外部存储设备,例如该计算机设备6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。当然,所述存储器61还可以既包括所述计算机设备6的内部存储单元也包括其外部存储设备。本实施例中,所述存储器61通常用于存储安装于所述计算机设备6的操作系统和各类应用软件,例如自动化测试工具构建方法或自动化测试方法方法的计算机可读指令等。此外,所述存储器61还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器62在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器62通常用于控制所述计算机设备6的总体操作。本实施例中,所述处理器62用于运行所述存储器61中存储的计算机可读指令或者处理数据,例如运行所述自动化测试工具构建方法或自动化测试方法方法的计算机可读指令。
所述网络接口63可包括无线网络接口或有线网络接口,该网络接口63通常用于在所述计算机设备6与其他电子设备之间建立通信连接。
在上述实施例中,本申请公开一种计算机设备,属于自动化测试技术领域。本申请通过GUI窗口界面和数据库连接构建自动化测试工具,自动化测试工具实现了用户输入数据库连接信息、执行自动化测试、显示测试结果和日志查询结果的功能。自动化测试方法利用自动化测试工具提供的功能,实现了响应测试按钮、执行SQL查询语句和显示测试结果的功能,用户只需点击测试按钮,自动化测试工具将自动执行相应的操作,并将结果显示在结果显示窗口上。本申请方便用户进行自动化测试,并提供了可视化的方式展示测试结果和日志信息,从而提高测试效率和可操作性。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令可被至少一个处理器执行,以使所述至少一个处理器执行如上述的计算机可读存储介质方法的步骤。
在上述实施例中,本申请公开一种计算机可读存储介质,属于自动化测试技术领域。本申请通过GUI窗口界面和数据库连接构建自动化测试工具,自动化测试工具实现了用户输入数据库连接信息、执行自动化测试、显示测试结果和日志查询结果的功能。自动化测试方法利用自动化测试工具提供的功能,实现了响应测试按钮、执行SQL查询语句和显示测试结果的功能,用户只需点击测试按钮,自动化测试工具将自动执行相应的操作,并将结果显示在结果显示窗口上。本申请方便用户进行自动化测试,并提供了可视化的方式展示测试结果和日志信息,从而提高测试效率和可操作性。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。

Claims (10)

1.一种自动化测试工具构建方法,其特征在于,包括:
创建GUI窗口界面,并获取用户在所述GUI窗口界面输入的数据库连接信息;
基于所述数据库连接信息连接目标数据库,其中,所述目标数据库为MySQL数据库或Oracle数据库;
在所述GUI窗口界面上生成测试按钮,并为所述测试按钮添加匹配的操作事件,其中,所述操作事件中预先编写有用于实现自动化测试的SQL查询语句,所述SQL查询语句存储在所述目标数据库中;
在所述GUI窗口界面上创建结果显示窗口和日志显示窗口,其中,所述结果显示窗口用于显示自动化测试结果,所述日志显示窗口用户日志查询结果。
2.如权利要求1所述的自动化测试工具构建方法,其特征在于,基于所述数据库连接信息连接目标数据库,具体包括:
将所述数据库连接信息保存到json文件中;
在所述GUI窗口界面上生成连接按钮,并为所述连接按钮添加匹配的操作事件;
响应与所述连接按钮匹配的操作事件,从所述json文件中获取数据库连接信息,并基于所述数据库连接信息连接目标数据库。
3.如权利要求1所述的自动化测试工具构建方法,其特征在于,还包括:
创建集成资源入口页面;
获取用户在所述集成资源入口页面上传的数据文件。
4.一种自动化测试方法,其特征在于,所述自动化测试方法应用如权利要求1至3任意一项所述的自动化测试工具构建方法构建的自动化测试工具,所述自动化测试方法包括:
响应所述测试按钮匹配的操作事件,获取与所述测试按钮匹配的操作事件对应的SQL查询语句;
执行所述与所述测试按钮匹配的操作事件对应的SQL查询语句,得到自动化测试结果;
在所述结果显示窗口上显示所述自动化测试结果。
5.如权利要求4所述的自动化测试方法,其特征在于,执行所述与所述测试按钮匹配的操作事件对应的SQL查询语句,得到自动化测试结果,具体包括:
调用cursor对象的execute()方法执行所述与所述测试按钮匹配的操作事件对应的SQL查询语句,得到所述自动化测试结果。
6.如权利要求4所述的自动化测试方法,其特征在于,还包括:
获取所述目标数据库中的用户日志表;
获取所述用户日志表中与自动化测试过程相关的数据字段,得到自动化测试数据字段;
在所述日志显示窗口显示所述自动化测试数据字段。
7.一种自动化测试工具构建装置,其特征在于,包括:
连接信息获取模块,用于创建GUI窗口界面,并获取用户在所述GUI窗口界面输入的数据库连接信息;
数据库连接模块,用于基于所述数据库连接信息连接目标数据库,其中,所述目标数据库为MySQL数据库或Oracle数据库;
测试按钮生成模块,用于在所述GUI窗口界面上生成测试按钮,并为所述测试按钮添加匹配的操作事件,其中,所述操作事件中预先编写有用于实现自动化测试的SQL查询语句,所述SQL查询语句存储在所述目标数据库中;
显示窗口生成模块,用于在所述GUI窗口界面上创建结果显示窗口和日志显示窗口,其中,所述结果显示窗口用于显示自动化测试结果,所述日志显示窗口用户日志查询结果。
8.一种自动化测试装置,其特征在于,所述自动化测试装置应用如权利要求7所述的自动化测试工具构建装置构建的自动化测试工具,所述自动化测试装置包括:
测试操作响应模块,用于响应所述测试按钮匹配的操作事件,获取与所述测试按钮匹配的操作事件对应的SQL查询语句;
SQL语句执行模块,用于执行所述与所述测试按钮匹配的操作事件对应的SQL查询语句,得到自动化测试结果;
测试结果显示模块,用于在所述结果显示窗口上显示所述自动化测试结果。
9.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如权利要求1至6中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如权利要求1至6中任一项所述的方法的步骤。
CN202310956493.5A 2023-07-31 2023-07-31 自动化测试工具构建方法、自动化测试方法及其相关设备 Pending CN116974929A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310956493.5A CN116974929A (zh) 2023-07-31 2023-07-31 自动化测试工具构建方法、自动化测试方法及其相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310956493.5A CN116974929A (zh) 2023-07-31 2023-07-31 自动化测试工具构建方法、自动化测试方法及其相关设备

Publications (1)

Publication Number Publication Date
CN116974929A true CN116974929A (zh) 2023-10-31

Family

ID=88477833

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310956493.5A Pending CN116974929A (zh) 2023-07-31 2023-07-31 自动化测试工具构建方法、自动化测试方法及其相关设备

Country Status (1)

Country Link
CN (1) CN116974929A (zh)

Similar Documents

Publication Publication Date Title
CN111324609A (zh) 知识图谱构建方法、装置、电子设备及存储介质
CN115658529A (zh) 用户页面的自动化测试方法以及相关设备
CN117033249A (zh) 一种测试用例生成方法、装置、计算机设备及存储介质
CN116974927A (zh) 性能自动化测试方法、系统、计算机设备及存储介质
CN115756692A (zh) 基于样式属性自动组合展示页面的方法及其相关设备
CN110209572A (zh) 用户界面测试方法、用户界面测试系统及终端
CN116974929A (zh) 自动化测试工具构建方法、自动化测试方法及其相关设备
CN115237425A (zh) 代码检视方法、装置、计算机设备及存储介质
CN117573561B (zh) 一种自动化测试系统、方法、电子设备和存储介质
KR102591313B1 (ko) 블록 라이브러리를 이용한 전기회로 모델링 시스템 및 그 방법
CN116524986B (zh) 存储产品的系统级测试方法和系统
CN116933733A (zh) 一种文本输入展示方法、装置、设备及其存储介质
CN116594599A (zh) Vue项目文件扫描展示方法、装置、设备及其存储介质
CN116166270A (zh) 一种xaml文件修正方法、装置、计算机设备及存储介质
CN116149665A (zh) 一种xaml文件修改方法、装置、计算机设备及存储介质
CN116991729A (zh) 一种测试用例生成方法、装置、设备及其存储介质
CN116662418A (zh) 基于配置化的报表实现方法、装置、设备及其存储介质
CN117492752A (zh) 一种页面动态配置方法、装置、计算机设备及存储介质
CN116954977A (zh) 一种页面异常排查方法、装置、设备及其存储介质
CN117271321A (zh) 业务自动化测试方法、系统、计算机设备及存储介质
CN118093066A (zh) 应用页面的创建方法、装置、电子设备及存储介质
CN117667668A (zh) 基于应用升级的应用分析方法、装置、设备及存储介质
CN116701119A (zh) 一种跑批任务数据监测方法、装置、设备及其存储介质
CN117493718A (zh) 一种页面生成方法、装置、电子设备及介质
CN117579457A (zh) 一种业务逻辑隔离方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination