CN113495828A - 日志展示方法、装置及电子设备 - Google Patents
日志展示方法、装置及电子设备 Download PDFInfo
- Publication number
- CN113495828A CN113495828A CN202010202335.7A CN202010202335A CN113495828A CN 113495828 A CN113495828 A CN 113495828A CN 202010202335 A CN202010202335 A CN 202010202335A CN 113495828 A CN113495828 A CN 113495828A
- Authority
- CN
- China
- Prior art keywords
- log
- information
- display
- window
- display interface
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3628—Software debugging of optimised code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例提供了一种日志展示方法、装置、电子设备及计算机可读存储介质,该日志展示方法包括:获取软件运行的日志信息,将日志信息格式化并存储;响应于显示界面上的触发指令,获取日志窗口信息和日志显示信息;根据日志窗口信息,在显示界面上生成日志显示窗口;根据日志显示信息,获取存储的日志信息;在日志显示窗口内显示日志信息。本申请实施例提供的日志展示方法无需借助额外的辅助设备将日志信息输出或转移到其他设备之后再显示,在同一设备上即可同时查阅软件运行或测试的状态,以及软件运行或测试过程中产生的日志信息,大幅度减少查看日志的困难度,提高软件测试和软件开发的效率。
Description
技术领域
本申请涉及软件测试技术领域,具体而言,本申请涉及一种日志展示方法、装置及电子设备。
背景技术
市场上的终端设备如智能手机、平板电脑等,具有体积小巧和便于携带的特点,以有限尺寸的屏幕显示必要的信息。但也正是因为设备小巧,这样的终端设备不方便连接键盘或鼠标等辅助外设,内容显示方面也受屏幕尺寸的限制,无法展示终端设备上应用软件的调试日志信息等必要开发辅助信息。
例如在采用Android(安卓)平台的终端设备上,终端设备通过USB(UniversalSerial Bus,通用串行总线)线缆与电脑连接,通过ADB(Android Debug Bridge,安卓调试桥)驱动终端设备与电脑的通信,将运行在终端设备上的软件调试日志传输到电脑端,借由Android Studio(安卓集成开发工具)等开发工具显示这些日志信息,供测试人员或开发人员定位问题。而采用iOS(由苹果公司开发的移动操作系统)平台:终端设备通过USB线缆与苹果电脑连接,通过苹果系统内置软件驱动终端设备与电脑的通信,将运行在终端设备上的软件调试日志传输到电脑端,借由苹果公司官方提供的Xcode(运行在苹果公司专属操作系统上的集成开发工具)开发工具显示这些日志,供测试人员或开发人员定位和处理问题。受苹果公司开发条款限制,真机调试还必须先将调试设备与开发者账号关联后才能进行上述过程。
由此可见,现有技术都借助了额外的设备才能实现查阅测试中的软件产生的测试日志,给测试的过程中带来了额外的设备成本。其次,引入线缆连接设备,也削弱了终端设备原有的便携性特点,对测试过程中的沟通交流产生了一定的阻碍。再者,不同平台在连接测试设备中额外引入了各自的不确定风险,比如ADB能否正常工作、iOS设备需要注册关联等,对软件测试的整体效率也有一定的影响。
发明内容
本申请针对现有方式的缺点,提出一种日志展示方法、装置、电子设备及计算机可读存储介质,用以解决现有技术存在的软件测试日志显示不便影响测试效率的技术问题。
第一个方面,本申请提供了一种日志展示方法,包括:
获取软件运行的日志信息,将日志信息格式化并存储;
响应于显示界面上的触发指令,获取日志窗口信息和日志显示信息;
根据日志窗口信息,在显示界面上生成日志显示窗口;
根据日志显示信息,获取存储的日志信息;
在日志显示窗口内显示日志信息。
第二个方面,本申请提供了一种日志展示装置,包括:
存储模块,用于获取软件运行的日志信息,将日志信息格式化并存储;
获取模块,用于响应于显示界面上的触发指令,获取日志窗口信息和日志显示信息;
执行模块,用于根据日志窗口信息,在显示界面上生成日志显示窗口;并用于根据日志显示信息,获取存储的所述日志信息;
显示模块,用于在日志显示窗口内显示日志信息。
第三个方面,本申请提供了一种电子设备,包括显示器,还包括:
处理器;
存储器,与处理器电连接;
至少一个程序,被存储在存储器中并被配置为由处理器执行,至少一个程序被配置用于:实现如本申请第一个方面描述的日志展示方法。
第四个方面,本申请提供了一种计算机可读存储介质,计算机可读存储介质存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如本申请第一个方面描述的日志展示方法。
本申请实施例提供的技术方案带来的有益技术效果是:
本申请提供的日志显示方法通过来自显示界面的触发指令,调取格式化并存储后的软件运行的日志信息,再直接在软件运行的显示界面上通过日志显示窗口显示,无需借助额外的辅助设备将日志信息输出转移再显示,在产品体验或测试过程中,能够及时方便地查看日志,从而快速判断软件运行问题发生的根本原因,也能够及时验证数据的准确性以及新功能的正确性,大幅度减少查看日志的困难度。
本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例提供的一种日志展示方法的流程示意图;
图2为本申请实施例提供的获取软件运行的日志信息,将日志信息格式化并存储的流程示意图;
图3为本申请实施例提供的响应于显示界面上的触发指令,获取日志窗口信息和日志显示信息的流程示意图;
图4为本申请实施例提供的一种显示界面的工作状态示意图;
图5为本申请实施例提供的另一种显示界面的工作状态示意图;
图6为本申请实施例提供的一种日志展示装置的结构的框架示意图;
图7为本申请实施例提供的日志展示装置的代码设计架构示意图;
图8为本申请实施例提供的一种日志展示装置实现直至展示方法的流程示意图;
图9为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面详细描述本申请,本申请的实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的部件或具有相同或类似功能的部件。此外,如果已知技术的详细描述对于示出的本申请的特征是不必要的,则将其省略。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
软件测试是在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对测试的软件是否能满足设计要求进行评估的过程,因此新开发的软件必须在运行终端上进行实际测试。随着移动终端设备的发展,很多软件都是以移动终端设备为运行平台,移动终端设备例如智能手机、平板电脑、掌上电子阅读器等,便于携带,使用方便,但移动终端设备在进行软件测试时,通常需要将日志文件导出到固定的电脑上,也即时刻要保持移动终端与某一测试计算机的连接,才能查阅软件运行过程中产生的日志文件。这种情况下,移动终端设备的便捷性被抑制,软件测试的整体效率也受到影响。
本申请提供的日志展示方法、装置、电子设备及计算机可读存储介质,旨在解决现有技术的如上技术问题。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
本申请第一个方面的实施例提供了一种日志展示方法,如图1所示,该方法的步骤包括:
S100:获取软件运行的日志信息,将日志信息格式化并存储。
S200:响应于显示界面上的触发指令,获取日志窗口信息和日志显示信息。
S300:根据日志窗口信息,在显示界面上生成日志显示窗口;根据日志显示信息,获取存储的日志信息。
S400:在日志显示窗口内显示日志信息。
通过在移动终端设备上添加插件,使得移动终端设备在安装待测试软件之后,运行软件,移动终端设备获取软件运行的日志信息,将日志信息进行统一整理、格式化后存储起来,具体可存储在移动终端设备的存储空间当中。移动终端设备的显示屏幕上检测到触发指令,该触发指令通过预先设定的形式在显示屏幕上形成,例如通过鼠标在显示屏幕上点击,或者通过手指在能够接收触摸信号的显示屏幕上点触等。响应于显示界面上的触发指令,移动终端设备从设备的存储空间中调取预设的日志窗口信息和日志显示信息。然后,移动终端设备根据日志窗口信息,在移动终端的显示界面上生成日志显示窗口,根据日志显示信息,从存储空间中获取存储的日志信息。将获取到的日志信息显示在日志显示窗口内。
本申请上述实施例提供的日志展示方法能够实现在移动终端的显示界面上根据需要直接显示软件运行日志,通过来自显示界面的触发指令,调取格式化并存储后的软件运行的日志信息,直接在软件运行的显示界面上通过日志显示窗口显示,与软件运行的界面共用设备屏幕,无需借助额外的辅助设备将日志信息输出转移再显示,在产品体验或测试过程中,能够及时方便地阅读日志,从而快速判断软件运行问题发生的根本原因,也能够及时验证数据的准确性以及新功能的正确性,大幅度降低日志显示的困难度。
具体而言,对于S100,本申请可具体以插件的模式提供给终端软件,然后跟随终端软件引入移动终端设备,插件以SDK(Software Development Kit,软件开发工具包)的形式提供,需要在终端软件或应用程序的开发代码中引入,一同编译构建在终端软件或应用程序内。通过预先对插件进行参数配置和预设API(Application Programming Interface,应用程序接口)向终端软件提供日志显示能力,该预设API是指插件SDK提供给接入方调用的API,接入方通过一定的参数配置对SDK进行初始化,以及通过调用API向插件输入原始的日志信息,预设API是插件与终端软件之间的数据通信连接渠道。在某些可行的实现方式中,获取软件运行的日志信息,将日志信息格式化并存储的步骤,如图2所示,具体包括:
S110:接收通过预设应用程序接口采集到的软件运行的日志信息。
S120:根据预设的格式化参数,将日志信息逻辑格式化为格式化的日志信息并存储。
通过预设API,插件不断获取到终端软件运行的日志信息,这些日志信息不断通过插件的处理,按照特定的秩序整理存储,具体是通过逻辑格式化的方式进行整理,具体的格式化参数,如文件系统类型、分配单元大小等参数,可以通过设置在插件中的配置界面由用户自定义。根据用户选定的文件系统,在移动终端设备的存储分区中划出一片用于存放文件分配表、目录表等文件的磁盘空间,以便用户使用该存储分区进行文件管理。整理格式化对输出数据的最大作用就是保证数据的“易读性”,调用方可能只是给API传入了一些调试内容信息,比如“开始获取网络数据”,通过格式化后会追加更详细的调试信息,并通过统一的格式进行输出,比如输出为“[20190216 16:41:21][商品列表模块]开始获取网络数据”。
可行的,在上述实施例的某些实施方式中,S200中,响应于显示界面上的触发指令,获取日志窗口信息和日志显示信息,如图3所示,该步骤具体包括:
S210:检测到显示界面上的触感信息,生成触发指令。
S220:根据触发指令,确定日志窗口信息,日志窗口信息包括窗口尺寸信息、窗口位置信息和窗口透明度信息。
S230:根据触发指令,确定日志显示信息,日志显示信息包括显示格式信息、显示时间信息和显示内容信息。
需要说明的是,S220和S230两个步骤并不存在运行先后的顺序问题,均是根据触发指令在移动终端设备的存储空间中确定插件中预先配置完毕参数的信息。通过将存储于移动终端设备的存储空间的日志信息读入至缓存层,最后滚动更新到移动终端设备的显示浮层中,在保持日志显示窗口高度不变的前提下,最新一条日志插入到日志列表的末尾,而日志列表则相应整体向上移动一条日志的高度。如果调用方持续通过API输入原始的日志信息,经过整理格式化后,日志列表会自动持续追加最新的日志信息至日志列表的末尾,并且其他内容持续上移,呈现滚动的视觉效果。日志列表支持双向滚动,以便测试开发人员查看过往所有的日志信息。
在上述实施方式中,可行的,如图4所示,一种具体的实现方式是,检测到显示界面上的触感信息的步骤,具体包括:设置于显示界面上的入口模块接收到触感信息,入口模块以预设显示格式显示在显示界面上。图4中14a即为入口模块,触感信息包括在显示界面上形成的特定动作信息,具体包括动作类型、动作次数或压力值等参数。可具体在移动终端设备的显示界面上设置特定形式的入口模块14a,该入口模块14a具有一定的预设显示格式,该预设显示格式包括入口模块与入口模块透明度、入口模块形状和入口模块位置等。例如可采用圆球形入口模块,呈半透明状悬浮于显示界面上,可针对该入口模块14a进行操作,例如按住入口模块14a后,该入口模块14a根据按压动作变为非透明状,可随用户的拖动而在显示界面上移动。可将入口模块14a所在的显示界面位置设置为接收触感信息的位置,防止用户误操作。
在另一些具体的实现方式中,入口模块14a以预设显示格式显示在显示界面上的步骤,还包括:若入口模块14a与显示界面边沿的间距小于预设间距值,将入口模块14a至少部分隐藏在显示界面边沿内。移动终端设备上的插件检测到入口模块14a悬浮于距离显示界面边沿较近的位置,则直接将该入口模块14a向显示界面的边沿内隐藏,但留出提示入口模块14a位置的线索,例如留出一小部分入口模块14a的外形,或者通过区别于显示界面边沿颜色的方式。当入口模块14a上接收到触感信息时,入口模块14a重新回到显示界面上,全部显示该入口模块14a的完整形状。
或者,可行的,在有些具体的实现方式中,如图4和图5所示,入口模块14a以预设显示格式显示在显示界面15上的步骤,具体包括:检测到入口模块14a在显示界面15上的静置时间超过预设时间值,将入口模块14a向与入口模块14a间距最小的显示界面15边沿移动,直至入口模块14a的边沿抵靠在显示界面15边沿。移动终端设备在进行软件或应用程序的测试时,入口模块14a始终显示在移动终端设备的显示界面15上,但是当用户未对入口模块14a进行操作,比如未对入口模块14a进行点触、按压或拖动等动作,超过一定的时间,可设置将入口模块14a自动向显示界面15的边沿处归拢,呈现入口模块14a吸附在显示界面15边沿的效果,避免入口模块14a妨碍用户查阅软件运行的情况或者日志显示的情况。入口模块14a优先向距离较近的显示界面15的边沿移动。
实际上,除了通过在显示界面15上预先设置入口模块14a的形式接收触感信息之外,也可通过预先设置的显示屏幕操作动作来实现触感信息的输入,例如可通过对显示屏幕的单点击、双点击或者屏幕按压等操作动作,输入与操作动作对应的信息指令,从而对应打开日志显示窗口14b,显示日志信息。
在上述实施例中,可行的,如图5所示,一种具体的实现方式是,日志显示窗口14b为矩形窗口;日志显示窗口14b的尺寸信息包括以下之一:日志显示窗口14b与显示界面15等宽,或者日志显示窗口14b与显示界面15等长;窗口位置信息包括:日志显示窗口14b的一个边沿与显示界面15的一个边沿重合。日志显示窗口14b显示的是日志信息,为了避免过度遮挡正在测试的软件的运行界面,通常日志显示窗口14b只占显示界面15的一部分。通常移动终端设备上的显示界面15为矩形,日志显示窗口14b也设置为矩形,该矩形的日志显示窗口14b要么与显示界面15同宽,位于显示界面15的上边沿或者显示界面15的下边沿处,要么与显示界面15同长度,位于显示界面15的左边沿或显示界面15的右边沿处。
当然,也可将日志显示窗口14b的大小设置为可调整的状态,并且该日志显示窗口14b能够根据用户的需要在显示界面15上移动。日志显示窗口14b可具体采取悬浮于软件运行或测试的显示界面15之上,相当于显示屏幕上显示的内容分两层,日志显示窗口14b显示在上层,而软件运行的界面显示在下层。该日志显示窗口14b也能够具体设置为具有一定的透明度的形式,可实现完整查阅软件运行情况,同时查阅对应的日志。日志显示窗口14b上设置有一般窗口界面的基本功能模块,例如最小化、最大化和关闭功能等,这些为相关领域技术人员所知,不做赘述。
经S100和S200,确定得到日志窗口信息和日志显示信息后,经S300在显示界面上提供日志显示窗口,并且确定需要显示的存储在移动终端设备存储空间内的日志信息,S300中生成日志显示窗口与获取存储的日志信息的两个分步骤并不设置先后顺序的技术特征。然后,通过S400将获取到的存储的日志信息显示在日志显示窗口内,具体为根据当前时间节点读出相应日志信息,从存储空间加载到缓存中,最后在日志显示窗口展示。而当入口模块14a没有被操作,也即未检测到显示界面上有触发指令,则只有数据层在后台记录(具体形式是格式化与存储)软件测试过程中产生的日志信息,无需对日志信息进行展示。
在本申请提供的实施例的某些可行的实施方式中,如图5所示,日志窗口信息还包括日志检索框信息;以及,根据日志窗口信息在显示界面上生成日志显示窗口的步骤,还包括:根据日志检索框信息在日志窗口内显示日志检索框14c;以及,在所述日志显示窗口14b内显示所述日志信息的步骤,包括:
根据通过日志检索框14c接收到的日志检索指令,确定与日志检索指令对应的日志信息;
将确定出的日志信息显示在日志显示窗口14b内。
在日志信息通过日志显示窗口展示的操作过程中,可以通过精准或模糊的查询以匹配相应的日志信息,并在日志显示窗口内返回查询和过滤的结果。通过在日志显示窗口内设置日志检索框14c,接收日志检索指令,能够实现日志信息的快速查询,进一步提高软件测试的日志信息查询灵活度和效率,也相应提高软件的测试效率。例如可通过SQL(Structured Query Language,结构化查询语言)在日志检索框14c中输入“=‘关键词’”进行精准查询,或者输入“like‘%关键词%’”进行模糊查询,该关键词可以是故障名称、动作名称或者时间等,通过模糊查询系统响应在日志显示窗口中显示全部带有该关键词的日志信息。该查询功能的实现需要具备的条件是:日志显示窗口已在移动终端设备的显示界面上展开;通过日志显示窗口的检索框获取到输入的日志检索指令。
本申请第二个方面提供了一种日志展示装置10,如图6所示,包括存储模块11、获取模块12、执行模块13和显示模块14。
日志展示装置10包括的这些模块中,存储模块11用于获取软件运行的日志信息,将日志信息格式化并存储。获取模块12用于响应于显示界面上的触发指令,获取日志窗口信息和日志显示信息。执行模块13用于根据日志窗口信息,在显示界面上生成日志显示窗口。执行模块还用于根据日志显示信息,获取存储的日志信息。显示模块14用于在日志显示窗口内显示日志信息。
本申请的实施例中提供的日志展示装置10能够通过实现第一个方面描述的日志展示方法,解决现有技术中存在的软件测试日志显示不便影响测试效率的技术问题,通过来自显示界面的触发指令,调取格式化并存储后的软件运行的日志信息,再直接在软件运行的显示界面上通过日志显示窗口显示,无需借助额外的辅助设备将日志信息输出转移再显示,大幅度减少查看日志的困难度,提高软件测试和软件开发的效率。
在上述实施例的一个实施方式中,存储模块11获取软件运行的日志信息,将日志信息格式化并存储的步骤,包括:接收通过预设应用程序接口采集到的软件运行的日志信息;根据预设的格式化参数,将日志信息逻辑格式化为格式化的日志信息并存储。
在上述实施例的另一个实施方式中,获取模块11响应于显示界面上的触发指令,获取日志窗口信息和日志显示信息的步骤,包括:
检测到显示界面上的触感信息,生成触发指令;根据触发指令,确定日志窗口信息,日志窗口信息包括窗口尺寸信息、窗口位置信息和窗口透明度信息;根据触发指令,确定日志显示信息,日志显示信息包括显示格式信息、显示时间信息和显示内容信息。
可行的,在一个具体的实现方式中,检测到显示界面上的触感信息的步骤,具体包括:设置于显示界面上的入口模块14a接收到触感信息,入口模块14a以预设显示格式显示在显示界面上;预设显示格式包括入口模块14a与入口模块14a透明度、入口模块14a形状和入口模块14a位置。
在另一个可行的具体实现方式中,入口模块14a以预设显示格式显示在显示界面上的步骤,还包括:若入口模块14a与显示界面边沿的间距小于预设间距值,将入口模块14a至少部分隐藏在显示界面边沿内。
在又一个可行的具体实现方式中,入口模块14a以预设显示格式显示在显示界面上的步骤,还包括:检测到入口模块14a在显示界面上的静置时间超过预设时间值,将入口模块14a向与入口模块14a间距最小的显示界面边沿移动,直至入口模块14a的边沿抵靠在显示界面边沿。
可行的,在另一个具体的实现方式中,日志显示窗口为矩形窗口;
日志显示窗口的尺寸信息包括以下之一:日志显示窗口与显示界面等宽,或者日志显示窗口与显示界面等长;
窗口位置信息包括:日志显示窗口的一个边沿与显示界面的一个边沿重合。
再者,在上述实施例的另一个可行的实施方式中,日志窗口信息还包括日志检索框信息;以及,根据日志窗口信息在显示界面上生成日志显示窗口的步骤,还包括:根据日志检索框信息在日志窗口内显示日志检索框;以及,在日志显示窗口内显示日志信息的步骤,包括:
根据通过日志检索框接收到的日志检索指令,确定与日志检索指令对应的日志信息;将确定出的日志信息显示在日志显示窗口内。
为了便于理解本申请提供的日志展示方法以及日志展示装置10,下面提供本申请在实际软件测试过程中的一种实例逻辑架构和实现方法流程:
如图7所示,本申请提供的日志展示装置的代码设计架构具体包括终端设备,终端设备中包括插件UI(User Interface,用户界面)层、逻辑层和数据层,其中插件UI层对应前述实施例中提供的日志展示装置中的执行模块和显示模块,插件UI层具体还包括操作入口和展示窗口区域,操作入口具体可由前文提到的入口模块14a实现,展示窗口区域具体表现为日志显示窗口。逻辑层对应于前述实施例中提供的日志展示装置中的获取模块,本实例中逻辑层中包括配置管理模块和日志处理模块,配置管理模块可供用户对日志显示窗口进行日志窗口信息的设置,日志处理模块则可供用户对日志的整理和格式化方式进行具体设置。数据层对应于前述实施例中提供的日志展示装置中的存储模块,本实例中数据层包括日志缓存和持久数据库,能够实现日志信息的存储和根据有关指令调用。
采用上述的日志展示装置的代码设计架构,具体实现日志展示方法的方式为:
如图8所示,业务层提供了日志信息显示的展示调试入口,软件测试日志信息来源的软件项目(图中的Project),软件项目提供了触发/隐藏测试入口的功能,通过该功能能够实现前述的入口模块14a的隐藏或者触发入口模块14a,展示调试入口与前文描述的入口模块14a相对应。逻辑层中提供有配置中心,即通过配置管理模块实现这一功能,配置中心能够配置本装置的基础设置,包括日志的存储策略、展示日志窗口的格式等,通过配置中心处理配置信息之后,设置装置中数据库的存储策略。通过逻辑层将来自软件项目的日志信息打印动作进行hook(钩子,一种源于Windows平台的消息处理机制),即通过hook机制监听到日志信息的打印动作,将日志信息输出到文件并保存本地磁盘,具体包括数据层的格式化并存储日志信息,根据设置好的存储策略将日志信息存入装置的数据库。当数据库获取到逻辑层中展示日志窗口的指令时,就将存储的日志信息读取至装置的缓存中,实现缓存数据。然后将缓存数据通过展示日志窗口进行展示。在展示日志窗口展示日志信息的过程中,通过日志检索机制过滤数据并展示,再次通过展示日志窗口将检索过滤后的日志信息展示出来。
基于同一发明构思,本申请实施例提供了一种电子设备,该电子设备,包括显示器,还包括:存储器和处理器。
存储器与处理器电连接。
至少一个程序,被存储在存储器中并被配置为由处理器执行,至少一个程序被配置用于:实现如本申请第一个方面的实施例提供的日志展示方法。
本技术领域技术人员可以理解,本申请实施例提供的电子设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备。这些设备具有存储在其内的计算机程序,这些计算机程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中。
与现有技术相比本申请提供的电子设备,可实现在同一显示器上同时显示软件运行或测试的界面和日志信息的展示界面,无需借助额外的辅助设备将日志信息输出或转移到其他设备之后再显示,大幅度减少查看日志的困难度,提高软件测试和软件开发的效率。
本申请在一个可选实施例中提供了一种电子设备,如图9所示,图9所示的电子设备2000包括:处理器2001和存储器2003。其中,处理器2001和存储器2003相电连接,如通过总线2002相连。
处理器2001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field-Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器2001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线2002可包括一通路,在上述组件之间传送信息。总线2002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线2002可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器2003可以是ROM(Read-Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(random access memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead-Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
可选地,电子设备2000还可以包括收发器2004。收发器2004可用于信号的接收和发送。收发器2004可以允许电子设备2000与其他设备进行无线或有线通信以交换数据。需要说明的是,实际应用中收发器2004不限于一个。
可选地,电子设备2000还可以包括输入单元2005。输入单元2005可用于接收输入的数字、字符、图像和/或声音信息,或者产生与电子设备2000的用户设置以及功能控制有关的键信号输入。输入单元2005可以包括但不限于触摸屏、物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆、拍摄装置、拾音器等中的一种或多种。
可选地,电子设备2000还可以包括输出单元2006。输出单元2006可用于输出或展示经过处理器2001处理的信息。输出单元2006可以包括但不限于显示装置、扬声器、振动装置等中的一种或多种。
虽然图9示出了具有各种装置的电子设备2000,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
可选的,存储器2003用于存储执行本申请方案的应用程序代码,并由处理器2001来控制执行。处理器2001用于执行存储器2003中存储的应用程序代码,以实现本申请实施例提供的任一种日志展示方法。
基于同一发明构思,本申请还提供了一种计算机可读存储介质,计算机可读存储介质存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现本申请实施例提供的任一种日志展示方法。
本申请实施例提供了一种计算机可读存储介质,与现有技术相比,无需借助额外的辅助设备将日志信息输出或转移到其他设备之后再显示,在同一设备上即可同时查阅软件运行或测试的状态,以及软件运行或测试过程中产生的日志信息,大幅度减少查看日志的困难度,提高软件测试和软件开发的效率。
本技术领域技术人员可以理解,本申请中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本申请中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本申请中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种日志展示方法,其特征在于,包括:
获取软件运行的日志信息,将所述日志信息格式化并存储;
响应于显示界面上的触发指令,获取日志窗口信息和日志显示信息;
根据所述日志窗口信息,在所述显示界面上生成日志显示窗口;
根据所述日志显示信息,获取存储的所述日志信息;
在所述日志显示窗口内显示所述日志信息。
2.根据权利要求1所述的日志展示方法,其特征在于,所述获取软件运行的日志信息,将所述日志信息格式化并存储的步骤,包括:
接收通过预设应用程序接口采集到的软件运行的日志信息;
根据预设的格式化参数,将所述日志信息逻辑格式化为格式化的日志信息并存储。
3.根据权利要求1所述的日志展示方法,其特征在于,所述响应于显示界面上的触发指令,获取日志窗口信息和日志显示信息的步骤,包括:
检测到显示界面上的触感信息,生成触发指令;
根据所述触发指令,确定所述日志窗口信息,所述日志窗口信息包括窗口尺寸信息、窗口位置信息和窗口透明度信息;
根据所述触发指令,确定所述日志显示信息,所述日志显示信息包括显示格式信息、显示时间信息和显示内容信息。
4.根据权利要求3所述的日志展示方法,其特征在于,所述检测到显示界面上的触感信息的步骤,包括:设置于所述显示界面上的入口模块接收到触感信息,所述入口模块以预设显示格式显示在所述显示界面上;
所述预设显示格式包括入口模块与入口模块透明度、入口模块形状和入口模块位置。
5.根据权利要求4所述的日志展示方法,其特征在于,所述入口模块以预设显示格式显示在所述显示界面上的步骤,还包括:
若所述入口模块与所述显示界面边沿的间距小于预设间距值,将所述入口模块至少部分隐藏在所述显示界面边沿内。
6.根据权利要求4所述的日志展示方法,其特征在于,所述入口模块以预设显示格式显示在所述显示界面上的步骤,还包括:
检测到所述入口模块在所述显示界面上的静置时间超过预设时间值,将所述入口模块向与所述入口模块间距最小的所述显示界面边沿移动,直至所述入口模块的边沿抵靠在所述显示界面边沿。
7.根据权利要求3所述的日志展示方法,其特征在于,所述日志显示窗口为矩形窗口;
所述日志显示窗口的尺寸信息包括以下之一:所述日志显示窗口与所述显示界面等宽,或者所述日志显示窗口与所述显示界面等长;
所述窗口位置信息包括:所述日志显示窗口的一个边沿与所述显示界面的一个边沿重合。
8.根据权利要求1所述的日志展示方法,其特征在于,所述日志窗口信息还包括日志检索框信息;
以及,所述根据所述日志窗口信息在所述显示界面上生成日志显示窗口的步骤,还包括:根据所述日志检索框信息在所述日志窗口内显示日志检索框;
以及,所述在所述日志显示窗口内显示所述日志信息的步骤,包括:
根据通过所述日志检索框接收到的日志检索指令,确定与所述日志检索指令对应的日志信息;
将确定出的日志信息显示在所述日志显示窗口内。
9.一种日志展示装置,其特征在于,包括:
存储模块,用于获取软件运行的日志信息,将所述日志信息格式化并存储;
获取模块,用于响应于显示界面上的触发指令,获取日志窗口信息和日志显示信息;
执行模块,用于根据所述日志窗口信息,在所述显示界面上生成日志显示窗口;并用于根据所述日志显示信息,获取存储的所述日志信息;
显示模块,用于在所述日志显示窗口内显示所述日志信息。
10.一种电子设备,包括显示器,其特征在于,还包括:
处理器;
存储器,与所述处理器电连接;
至少一个程序,被存储在所述存储器中并被配置为由所述处理器执行,所述至少一个程序被配置用于:实现如权利要求1~8中任一项所述的日志展示方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010202335.7A CN113495828A (zh) | 2020-03-20 | 2020-03-20 | 日志展示方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010202335.7A CN113495828A (zh) | 2020-03-20 | 2020-03-20 | 日志展示方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113495828A true CN113495828A (zh) | 2021-10-12 |
Family
ID=77994305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010202335.7A Pending CN113495828A (zh) | 2020-03-20 | 2020-03-20 | 日志展示方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113495828A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115086206A (zh) * | 2022-06-14 | 2022-09-20 | 工银科技有限公司 | 一种客户端软件调试方法和装置 |
-
2020
- 2020-03-20 CN CN202010202335.7A patent/CN113495828A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115086206A (zh) * | 2022-06-14 | 2022-09-20 | 工银科技有限公司 | 一种客户端软件调试方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107783898A (zh) | 移动应用的测试方法及测试设备 | |
CN109656815B (zh) | 有配置文件的测试语句编写方法、装置、介质及电子设备 | |
CN107451112B (zh) | 表格工具数据检查方法、装置、终端设备及存储介质 | |
CN110875858A (zh) | 应用测试数据抓取方法、系统、设备及存储介质 | |
CN106557308A (zh) | 一种软件持续集成方法及装置 | |
CN105740117B (zh) | 芯片调试方法和装置 | |
CN113190401A (zh) | 快游戏的异常监控方法、电子设备、移动终端以及存储介质 | |
CN111693294A (zh) | 车辆检测方法、装置、终端设备及存储介质 | |
CN111352997A (zh) | 一种测试环境校验方法及系统 | |
CN113495828A (zh) | 日志展示方法、装置及电子设备 | |
CN110908899A (zh) | 应用程序的调试方法、移动终端及计算机可读存储介质 | |
CN113806661A (zh) | 网站信息无障碍检测工具 | |
CN108228611B (zh) | 单据信息抄写方法和装置 | |
CN111625384B (zh) | 移动终端异常问题分析方法、系统、终端设备及存储介质 | |
CN112650673A (zh) | 事务跟踪系统中测试用例的创建方法、装置及电子设备 | |
CN115470125B (zh) | 基于日志文件的调试方法、设备以及存储介质 | |
US5964892A (en) | General Purpose Interface Bus (GPIB) system and method which provides GPIB call capture and display | |
CN115292178A (zh) | 测试数据搜索方法、装置、存储介质以及终端 | |
CN114490390A (zh) | 测试数据生成方法、装置、设备及存储介质 | |
CN112363915A (zh) | 用于页面性能测试的方法、装置、终端设备及存储介质 | |
CN111930456A (zh) | 一种测试日志的显示方法及电子设备、存储介质 | |
CN115686506A (zh) | 一种数据显示方法、装置、电子设备和存储介质 | |
CN112052054A (zh) | 函数调用方法、装置、电子设备及存储介质 | |
US7587519B2 (en) | Method and device for modifying modular messages | |
CN101430656B (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20221130 Address after: 1402, Floor 14, Block A, Haina Baichuan Headquarters Building, No. 6, Baoxing Road, Haibin Community, Xin'an Street, Bao'an District, Shenzhen, Guangdong 518000 Applicant after: Shenzhen Yayue Technology Co.,Ltd. Address before: 518000 Tencent Building, No. 1 High-tech Zone, Nanshan District, Shenzhen City, Guangdong Province, 35 Floors Applicant before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd. |