CN109144850B - 移动终端的交互通信的测试方法及*** - Google Patents
移动终端的交互通信的测试方法及*** Download PDFInfo
- Publication number
- CN109144850B CN109144850B CN201810812452.8A CN201810812452A CN109144850B CN 109144850 B CN109144850 B CN 109144850B CN 201810812452 A CN201810812452 A CN 201810812452A CN 109144850 B CN109144850 B CN 109144850B
- Authority
- CN
- China
- Prior art keywords
- mobile terminal
- test
- interactive
- information
- port
- 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.)
- Active
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/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开了移动终端的交互通信的测试方法及***。测试方法包括:Appium服务器发送交互测试指令至第一移动终端和第二移动终端;第一移动终端在接收到交互测试指令时调用Pipe以使第一移动终端处于发送信息状态,第二移动终端在接收到交互测试指令时调用Pipe以使第二移动终端处于接收信息状态;第一移动终端执行第一测试脚本以通过服务器发送测试信息至第二移动终端;第一移动终端调用Pipe以使第一移动终端处于接收信息状态;第二移动终端在接收到测试信息后,调用Pipe以使第二移动终端处于发送信息状态;第二移动终端执行第二测试脚本以反馈测试信息至第一移动终端。本发明确保每次测试均是有效的,提高了测试效率。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种移动终端的通讯类APP(计算机应用程序)的交互通信的测试方法及***。
背景技术
目前,通讯类产品,例如Xcall(自动联系呼叫软件),通常需要两台设备同时进行交互通信来实现一个测试用例。例如,在一台手机上进行操作,在另外一台手机上进行验证。但在实际执行case(测试用例)的过程中,会出现一台手机的应用还没有启动起来,而另一台手机已经开始拨打电话了。现有技术的测试方法常因不能实现两台手机上所执行case的一致性导致测试失败,效率较低。
发明内容
本发明要解决的技术问题是为了克服现有技术的测试方法常因不能实现两台手机上所执行case的一致性导致测试失败,效率较低的缺陷,提供一种移动终端的交互通信的测试方法及***。
本发明是通过下述技术方案来解决上述技术问题:
一种移动终端的交互通信的测试***,所述测试***包括:Appium(自动化测试开源工具)服务器、第一移动终端和第二移动终端;
所述Appium服务器用于发送交互测试指令至所述第一移动终端和所述第二移动终端;
所述第一移动终端用于在接收到所述交互测试指令时调用Pipe(管道)以使所述第一移动终端处于发送信息状态;
所述第二移动终端用于在接收到所述交互测试指令时调用所述Pipe以使所述第二移动终端处于接收信息状态;
所述第一移动终端还用于执行第一测试脚本以通过所述Appium服务器发送测试信息至所述第二移动终端,并调用Pipe以使所述第一移动终端处于接收信息状态;
所述第二移动终端还用于在接收到所述测试信息后,调用所述Pipe以使所述第二移动终端处于发送信息状态,并执行第二测试脚本以反馈测试信息至所述第一移动终端。
较佳地,所述第一测试脚本和所述第二测试脚本包括测试用例;
所述测试用例包括:页面测试和通话测试。
较佳地,所述Appium服务器包括第一端口和第二端口;
所述Appium服务器在接收到测试指令时通过所述第一端口发送交互测试指令至所述第一移动终端,并通过所述第二端口发送所述交互测试指令至所述第二移动终端。
较佳地,所述Appium服务器还用于将所述第一端口和所述第二端口的端口号设置为互不相同。
较佳地,所述交互测试指令包括第一移动终端的UDID(设备识别码)和第二移动终端的UDID。
一种移动终端的交互通信的测试方法,所述测试方法包括以下步骤:
Appium服务器发送交互测试指令至第一移动终端和第二移动终端;
所述第一移动终端在接收到所述交互测试指令时调用Pipe以使所述第一移动终端处于发送信息状态,所述第二移动终端在接收到所述交互测试指令时调用所述Pipe以使所述第二移动终端处于接收信息状态;
所述第一移动终端执行第一测试脚本以通过所述Appium服务器发送测试信息至所述第二移动终端;
所述第一移动终端调用Pipe以使所述第一移动终端处于接收信息状态;
所述第二移动终端在接收到所述测试信息后,调用所述Pipe以使所述第二移动终端处于发送信息状态;
所述第二移动终端执行第二测试脚本以反馈测试信息至所述第一移动终端。
较佳地,所述第一测试脚本和所述第二测试脚本包括测试用例;
所述测试用例包括:页面测试和通话测试。
较佳地,所述Appium服务器包括第一端口和第二端口;
Appium服务器发送交互测试指令至第一移动终端和第二移动终端的步骤,具体包括:
所述Appium服务器在接收到测试指令时通过所述第一端口发送交互测试指令至所述第一移动终端,并通过所述第二端口发送所述交互测试指令至所述第二移动终端。
较佳地,所述测试方法还包括:
所述Appium服务器将所述第一端口和所述第二端口的端口号设置为互不相同。
较佳地,所述交互测试指令包括第一移动终端的UDID和第二移动终端的UDID。
本发明的积极进步效果在于:本发明采用多进程通信控制多台移动终端同时进行交互式通信测试,子进程之间使用Pipe进行同步,以保证两者的测试程序在顺序上一一对应,有效的避免了一台移动终端的应用还没有启动起来,而另一台机器已经开始运行的情形,提高了测试效率。
附图说明
图1为本发明实施例1的移动终端的交互通信的测试***的模块示意图。
图2为本发明实施例2的移动终端的交互通信的测试方法的流程图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
实施例1
本实施例的测试***可同时对多台移动终端进行测试,例如实现Android(一种操作***)与iOS(一种操作***)真机的并行测试,由于多台移动终端同时进行交互通信测试,完成大量的重复劳动,从而节约了人力成本,提高了测试效率。
如图1所示,以对两台移动终端进行测试为例,本实施例的测试***包括:Appium服务器1、第一移动终端2和第二移动终端3。Appium服务器包括第一端口和第二端口。
进行测试前,Appium服务器将第一端口和第二端口的端口号设置为互不相同。将交互测试指令中的UDID修改为需要进行交互通信测试的两台目标移动终端的UDID,例如第一移动终端的UDID和第二移动终端的UDID。
进行测试时,Appium服务器1启动两个子进程,分别发送交互测试指令至第一移动终端和第二移动终端。具体的,Appium服务器在接收到测试指令时,一个子进程通过第一端口发送交互测试指令至第一移动终端,另一个子进程通过第二端口发送交互测试指令至第二移动终端。
第一移动终端2在接收到交互测试指令时调用Pipe以使第一移动终端处于发送信息状态。
第二移动终端3在接收到交互测试指令时调用Pipe以使第二移动终端处于接收信息状态,此时第二移动终端阻塞,以等待第一移动终端发送测试信息。
第一移动终端2执行第一测试脚本以通过Appium服务器发送测试信息至第二移动终端,并调用Pipe以使第一移动终端处于接收信息状态,此时第一移动终端阻塞,以等待第二移动终端反馈测试信息。
第二移动终端3在接收到测试信息后,调用Pipe以使第二移动终端处于发送信息状态,并执行第二测试脚本以反馈测试信息至第一移动终端。
本实施例中,第一测试脚本和第二测试脚本包括测试用例。测试用例例如页面测试和通话测试。
以对Xcall的通话测试为例,两个移动终端接收到交互测试指令时则同时启动Xcall,且第一移动终端的Xcall处于发送信息状态,第二移动终端的Xcall处于接收信息状态,此时第一移动终端可根据测试脚本拨打第二移动终端的电话。当第二移动终端的Xcall处于发送信息状态,第一移动终端的Xcall处于接收信息状态时,第二移动终端可根据测试脚本执行挂断的动作,并反馈结果(测试信息)至第一移动终端。
进行页面测试时,为了解决pytest(一种测试框架)类的参数传递问题:unittest(一种测试框架)类不能接受参数。对unittest进行一些改造。首先写一个类继承unittest类,使其可以接受参数,然后让待测试类继承它。另外,将web(全球广域网)端测试常用到的PageObject(页面对象)设计模式与appium服务器相结合,将代码以每一个待测试的页面为基本单位进行拆分和分层,其中包含页面中所需要测试的元素(按键、输入框、标题等),这样在测试页面中可以通过调用页面类来获取页面元素,从而避免了当页面元素ID或者位置发生变化时,需要改变测试页面代码的情况。将同一个页面上的所有信息以及相对应的操作都放到一个类中,从而使具体的测试用例变成了简单的调用和验证操作。
本实施例中,两个子进程分别对应两个不同的Appium服务,子进程之间使用Pipe进行同步,以保证两者的测试程序在顺序上一一对应,有效的避免了一台移动终端的应用还没有启动起来,而另一台移动终端已经开始运行的情形,从而确保每次测试均是有效的,提高了测试效率。
通过编写脚本,本实施例可重复多次进行通信交互测试,以发现许多人工难以操作出来的crash以及bug,提高测试准确度。本实施例中,Appium服务器还可生成测试报告,统计crash(进程中断)率等。
实施例2
如图2所示,本实施例的移动终端的交互通信的测试方法包括以下步骤:
步骤101、Appium服务器发送交互测试指令至第一移动终端和第二移动终端。
具体的,步骤101包括:
Appium服务器在接收到测试指令时通过Appium服务器的第一端口发送交互测试指令至第一移动终端,并通过第二端口发送交互测试指令至第二移动终端。
其中,交互测试指令UDID。在进行测试前,需要将交互测试指令中的UDID修改为需要进行交互通信测试的两台目标移动终端的UDID。
步骤102、第一移动终端在接收到交互测试指令时调用Pipe以使第一移动终端处于发送信息状态。
步骤102’、第二移动终端在接收到交互测试指令时调用Pipe以使第二移动终端处于接收信息状态。
步骤103、第一移动终端执行第一测试脚本并通过Appium服务器发送测试信息至第二移动终端。
步骤104、第一移动终端调用Pipe以使第一移动终端处于接收信息状态。
步骤104’、第二移动终端在接收到测试信息后,调用Pipe以使第二移动终端处于发送信息状态。
步骤105、第二移动终端执行第二测试脚本,并反馈测试信息至第一移动终端。
其中,第一测试脚本和第二测试脚本包括多个测试用例;测试用例包括:页面测试和通话测试。
本实施例中,步骤101之前,测试方法还包括:
Appium服务器将第一端口和第二端口的端口号设置为互不相同。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
Claims (10)
1.一种移动终端的交互通信的测试***,其特征在于,所述测试***包括:Appium服务器、第一移动终端和第二移动终端;
所述Appium服务器用于启动两个子进程,分别发送交互测试指令至所述第一移动终端和所述第二移动终端;
所述第一移动终端用于在接收到所述交互测试指令时调用Pipe以使所述第一移动终端处于发送信息状态;
所述第二移动终端用于在接收到所述交互测试指令时调用所述Pipe以使所述第二移动终端处于接收信息状态;
所述第一移动终端还用于执行第一测试脚本以通过所述Appium服务器发送测试信息至所述第二移动终端,并调用Pipe以使所述第一移动终端处于接收信息状态;
所述第二移动终端还用于在接收到所述测试信息后,调用所述Pipe以使所述第二移动终端处于发送信息状态,并执行第二测试脚本以反馈测试信息至所述第一移动终端。
2.如权利要求1所述的移动终端的交互通信的测试***,其特征在于,所述第一测试脚本和所述第二测试脚本包括测试用例;
所述测试用例包括:页面测试和通话测试。
3.如权利要求1所述的移动终端的交互通信的测试***,其特征在于,所述Appium服务器包括第一端口和第二端口;
所述Appium服务器在接收到测试指令时通过所述第一端口发送交互测试指令至所述第一移动终端,并通过所述第二端口发送所述交互测试指令至所述第二移动终端。
4.如权利要求3所述的移动终端的交互通信的测试***,其特征在于,所述Appium服务器还用于将所述第一端口和所述第二端口的端口号设置为互不相同。
5.如权利要求1所述的移动终端的交互通信的测试***,其特征在于,所述交互测试指令包括第一移动终端的UDID和第二移动终端的UDID。
6.一种移动终端的交互通信的测试方法,其特征在于,所述测试方法包括以下步骤:
Appium服务器启动两个子进程,分别发送交互测试指令至第一移动终端和第二移动终端;
所述第一移动终端在接收到所述交互测试指令时调用Pipe以使所述第一移动终端处于发送信息状态,所述第二移动终端在接收到所述交互测试指令时调用所述Pipe以使所述第二移动终端处于接收信息状态;
所述第一移动终端执行第一测试脚本以通过所述Appium服务器发送测试信息至所述第二移动终端;
所述第一移动终端调用Pipe以使所述第一移动终端处于接收信息状态;
所述第二移动终端在接收到所述测试信息后,调用所述Pipe以使所述第二移动终端处于发送信息状态;
所述第二移动终端执行第二测试脚本以反馈测试信息至所述第一移动终端。
7.如权利要求6所述的移动终端的交互通信的测试方法,其特征在于,所述第一测试脚本和所述第二测试脚本包括测试用例;
所述测试用例包括:页面测试和通话测试。
8.如权利要求6所述的移动终端的交互通信的测试方法,其特征在于,所述Appium服务器包括第一端口和第二端口;
Appium服务器发送交互测试指令至第一移动终端和第二移动终端的步骤,具体包括:
所述Appium服务器在接收到测试指令时通过所述第一端口发送交互测试指令至所述第一移动终端,并通过所述第二端口发送所述交互测试指令至所述第二移动终端。
9.如权利要求8所述的移动终端的交互通信的测试方法,其特征在于,所述测试方法还包括:
所述Appium服务器将所述第一端口和所述第二端口的端口号设置为互不相同。
10.如权利要求6所述的移动终端的交互通信的测试方法,其特征在于,所述交互测试指令包括第一移动终端的UDID和第二移动终端的UDID。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810812452.8A CN109144850B (zh) | 2018-07-23 | 2018-07-23 | 移动终端的交互通信的测试方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810812452.8A CN109144850B (zh) | 2018-07-23 | 2018-07-23 | 移动终端的交互通信的测试方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109144850A CN109144850A (zh) | 2019-01-04 |
CN109144850B true CN109144850B (zh) | 2022-02-11 |
Family
ID=64801440
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810812452.8A Active CN109144850B (zh) | 2018-07-23 | 2018-07-23 | 移动终端的交互通信的测试方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109144850B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111026667B (zh) * | 2019-12-09 | 2023-05-05 | 北京乐学帮网络技术有限公司 | 脚本执行方法、装置和电子设备 |
CN115276844B (zh) * | 2022-08-02 | 2023-06-13 | 上海移柯通信技术股份有限公司 | 通信模组的测试方法、装置、存储介质及电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105243015A (zh) * | 2015-09-25 | 2016-01-13 | 惠州Tcl移动通信有限公司 | 一种自动化测试软件的方法及*** |
CN106412192A (zh) * | 2016-08-31 | 2017-02-15 | 深圳天珑无线科技有限公司 | 一种移动终端测试方法及其*** |
CN106959921A (zh) * | 2017-02-20 | 2017-07-18 | 百度在线网络技术(北京)有限公司 | 自动测试方法、终端、平台及*** |
CN106997291A (zh) * | 2016-01-26 | 2017-08-01 | 中移(杭州)信息技术有限公司 | 一种控制方法及主节点、从节点 |
CN107092555A (zh) * | 2016-08-05 | 2017-08-25 | 北京小度信息科技有限公司 | 一种测试应用程序的方法及*** |
CN107231272A (zh) * | 2017-05-26 | 2017-10-03 | 上海斐讯数据通信技术有限公司 | 一种无线信息获取的自动化测试装置及方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8117623B1 (en) * | 2004-11-18 | 2012-02-14 | Adobe Systems Incorporated | System and method for providing notices to users of a computer program in a flexible way |
US20150074684A1 (en) * | 2013-09-11 | 2015-03-12 | Cellrox, Ltd. | Techniques for enabling inter-process communication (ipc) among multiple personas in a mobile technology platform |
US9710368B1 (en) * | 2014-05-02 | 2017-07-18 | Amazon Technologies, Inc. | Inter-process communication automated testing framework |
CN107122293A (zh) * | 2016-12-05 | 2017-09-01 | 北京小度信息科技有限公司 | 软件性能测试方法、装置、服务器及*** |
CN107368411A (zh) * | 2017-06-30 | 2017-11-21 | 北京小米移动软件有限公司 | 测试方法、装置及*** |
CN107465572A (zh) * | 2017-08-02 | 2017-12-12 | 华数传媒网络有限公司 | 智能终端测试方法、装置及*** |
-
2018
- 2018-07-23 CN CN201810812452.8A patent/CN109144850B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105243015A (zh) * | 2015-09-25 | 2016-01-13 | 惠州Tcl移动通信有限公司 | 一种自动化测试软件的方法及*** |
CN106997291A (zh) * | 2016-01-26 | 2017-08-01 | 中移(杭州)信息技术有限公司 | 一种控制方法及主节点、从节点 |
CN107092555A (zh) * | 2016-08-05 | 2017-08-25 | 北京小度信息科技有限公司 | 一种测试应用程序的方法及*** |
CN106412192A (zh) * | 2016-08-31 | 2017-02-15 | 深圳天珑无线科技有限公司 | 一种移动终端测试方法及其*** |
CN106959921A (zh) * | 2017-02-20 | 2017-07-18 | 百度在线网络技术(北京)有限公司 | 自动测试方法、终端、平台及*** |
CN107231272A (zh) * | 2017-05-26 | 2017-10-03 | 上海斐讯数据通信技术有限公司 | 一种无线信息获取的自动化测试装置及方法 |
Non-Patent Citations (5)
Title |
---|
"Android平台电信业务的可视电话开发技术研究";刘浩;《中国优秀硕士学位论文全文数据库 信息科技辑》;20130515(第05期);I136-390 * |
"appium多机并行测试";每天1990;《https://www.cnblogs.com/meitian/p/7590305.html》;20170925;第1页 * |
"OSA/Parlay-based middleware architecture and performance analysis for homogeneous service provision in Next Generation Networks";Nikolaos Tselikas等;《Computer Communications》;20070202;第30卷(第3期);第564-576页 * |
"Research on automated testing framework for multi-platform mobile applications";Da Zun等;《2016 4th International Conference on Cloud Computing and Intelligence Systems (CCIS)》;20160819;第82-87页 * |
"基于云的Android应用自动化测试框架研究";陈学亮 等;《电信技术》;20170625(第06期);第29-31+35页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109144850A (zh) | 2019-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104281518B (zh) | 终端应用测试方法、装置、***、平台及移动终端 | |
CN108874677B (zh) | 一种安卓终端及其测试方法和*** | |
CN104853020A (zh) | 一种交互测试方法及其终端 | |
CN105302722B (zh) | Cts自动测试方法及装置 | |
CN102541700A (zh) | 一种终端测试方法、测试设备及终端代理 | |
CN104778121A (zh) | 游戏程序的测试方法、装置及*** | |
CN109144850B (zh) | 移动终端的交互通信的测试方法及*** | |
CN107135124B (zh) | 一种多蓝牙通讯并行测试的方法及*** | |
CN110941563A (zh) | 自动化脚本测试方法及装置 | |
CN104199780A (zh) | 一种pos应用程序测试的方法及*** | |
CN105354118A (zh) | 智能终端的自动测试方法、装置及*** | |
JP4440185B2 (ja) | シナリオ編集装置および擬似基地局試験システムおよび擬似端末試験システムおよびシナリオ編集方法および試験処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム | |
CN109729346B (zh) | 电视的远程调试方法、调试终端、电视终端及*** | |
CN111050333A (zh) | 一种基站自动化测试方法及*** | |
CN114301506A (zh) | 用于模拟nfc功能的方法及装置、nfc终端、存储介质 | |
KR20050034661A (ko) | 이동 통신 단말기 응용 프로그램 및 부가 서비스 기능 시험자동화 시스템 | |
CN113452556A (zh) | 产品技能的配置方法、装置、存储介质及电子装置 | |
CN108009084B (zh) | 一种混合移动应用的测试方法、装置及*** | |
CN108647149B (zh) | 电子设备的测试方法、装置、***和存储介质 | |
US11474934B1 (en) | Software development systems for creation and testing of voice and messaging applications and related methods and computers | |
CN113934552A (zh) | 功能代码的确定方法及装置、存储介质、电子装置 | |
CN110971696B (zh) | 一种实现虚拟电子卡通讯的***和方法 | |
CN114328257A (zh) | 自动化测试用例执行方法、***及电子设备 | |
CN113934591A (zh) | 数据监听方法及装置、存储介质、电子装置 | |
CN113515447A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |