CN105339893A - 具有集成测试支持的应用商店 - Google Patents
具有集成测试支持的应用商店 Download PDFInfo
- Publication number
- CN105339893A CN105339893A CN201480035857.5A CN201480035857A CN105339893A CN 105339893 A CN105339893 A CN 105339893A CN 201480035857 A CN201480035857 A CN 201480035857A CN 105339893 A CN105339893 A CN 105339893A
- Authority
- CN
- China
- Prior art keywords
- user
- application
- version
- edition
- test
- 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.)
- Granted
Links
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/3664—Environments for testing or debugging software
-
- 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/3692—Test management for test results analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- 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
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
公开了***和技术,该***和技术用于向第一用户提供应用的标准版本、接收来自第二用户的对应用的请求、将第二用户识别为测试用户以及基于该识别向第二用户提供应用的第二版本。可以报告第二用户与应用的第二版本的交互事件,并且该布置可以使用第二用户与应用的第二版本的交互事件来修改应用的第二版本。替选地,第二用户可以拒绝应用的第二版本,并且可以基于拒绝来更改第二用户的状态。
Description
背景技术
当前,有多个用户可以从其下载应用的电子应用商店。通常,在任何给定的时间,在商店中,仅有最新版本的应用是可用的。旨在提供同一个应用的多个版本的开发者通常需要发布两个或更多单独的应用(例如,不是同一个应用的两个版本),这可能增加维护的成本、维护的时间、发布的时间和审核的过程。传统上,应用商店不允许同一个应用id下的多个应用,这可能需要开发者更改应用,并可能破坏应用相互间通信的方式。应用的开发者可以从发布应用的测试版本给小组用户、接收反馈以及在向普通公众发布此应用之前修正缺陷中受益。对于传统的应用商店,开发者不能将应用商店内的应用的测试版本发布到一组有限的用户,并且可能需要使用其它的渠道来分发这样的测试应用。
发明内容
根据本公开主题的实现,一种布置可以经由在线应用商店向用户提供应用的第一版本。该布置可以接收来自不同的用户的对应用的请求,将不同的用户识别为第二用户,并基于这样的识别将应用的第二版本提供给第二用户。可以记录被识别为测试用户的用户与应用的第二版本的交互事件并将其报告给该布置。如果应用的测试版本被使得对测试用户组可用,并且第二用户具有该组的成员身份,则第二用户被认为是测试用户,并且该应用的测试版本被使得对第二用户可用。替选地,被识别为测试用户的第二用户可以拒绝该应用的测试版本,该布置可以向测试用户提供该应用的第一版本,并且,此外,更改用户的状态。也可能应用的开发者可以向多个组提供同一个应用的多个版本,诸如alpha测试、beta测试、发布候选等。如果用户是多个组的一部分,则可以同时将该应用的多个版本提供给用户,并且用户可以决定下载或安装哪个版本。
根据本公开的***和技术允许将用户识别为测试用户,并向用户提供应用的测试版本。用户可以拒绝应用,并且用户的状态可以被更改,或用户可以与应用交互,并且可以将交互事件报告给该布置。本公开主题的附加的特征、优势和实现可以在下面的详细描述、附图和权利要求的讨论中进行详细地阐述或变得显而易见。而且,可以理解,上述的发明内容和下面的详细描述都包括示例,并且旨在在不限制权利要求的范围情况下提供进一步的解释。
附图说明
被包括用来提供对本公开主题的进一步理解的附图被合并进本说明,并构成本说明的一部分。附图还图示出本公开主题的实现,并与详细的描述一起用于解释本公开主题的实现的原理。没有尝试示出比基本理解本公开的主题和可以实践本公开主题的各种方式所必需的更详细的结构性细节。
图1示出根据本公开主题的实现的计算机。
图2示出根据本公开主题的实现的网络配置。
图3示出根据本公开主题的实现的向用户提供应用的版本的示例过程。
图4a示出根据本公开主题的实现的向用户提供应用的标准版本的示例图示。
图4b示出根据本公开主题的实现的向用户提供应用的测试版本的示例图示。
图4c示出根据本公开主题的实现的提供应用的标准版本和测试版本的示例图示。
图5示出根据本公开主题的实现的更改用户状态的示例过程。
具体实施方式
通过应用商店向用户提供应用的单一版本可能限制了开发者使用测试组用户来测试应用的较新的版本的能力。具体地,被配置使得应用的仅一个版本可用于应用商店的布置不允许开发者向不同组用户提供应用的不同版本。根据本公开主题的实现,基于用户的状态或选择,或基于用户是其一部分的组,用户可以接收应用的版本或具有接收应用的版本的选项。如此处公开的,应用的测试版本可以是没有发布给普通公众的应用的任何版本,并且可以是处于测试、实验或开发阶段的版本。因此,如此处公开的,可以向作为测试组的一部分的用户提供应用的测试版本。此外,多个测试版本和多个测试组可以同时共存,这样,单个应用可以有两个或更多测试版本,并且单个用户可以是两个或更多组的一部分。应用的标准版本可以是应用的诸如被发布给普通公众的版本的任何产品版本。因此,如此处公开的,可以向不是测试组的一部分的用户或是标准组的一部分的用户提供应用的标准版本。作为示例,可以向是测试组和标准组的一部分的用户提供应用的测试版本和相同应用的标准版本两者。一种布置可以通过用户使用电子设备访问应用商店来接收来自用户的对应用的请求。如此处公开的,基于任何适用的因素,该布置可以将用户识别为非测试组的一部分。因此,基于识别,可以向用户提供该应用的标准版本(例如,测试过和公开发布的版本)。该布置可以经由应用商店接收来自另一个用户的对应用的申请。如此处公开的,基于适用的因素,该布置可以将该用户识别为测试组的一部分,并基于识别,向用户提供应用的测试版本。例如,该布置可以接收用户设置数据,并检测用户选择的接收应用的测试版本的设置,或可以将用户识别为测试组的一部分。因此,可以向用户提供应用的测试版本,或该应用的标准版本和测试版本两者。可以记录用户与该应用的测试版本的交互并将其报告给开发者或任何适用的实体,这样,基于交互,可以对测试应用进行评估和/或改进。
本公开主题的实现可以被实现为各种组件和网络架构,以及可以与各种组件和网络架构一起使用。图1是适合实现本公开主题的实现的示例计算机20。计算机20包括总线21,总线21互连计算机20的主要组件,诸如中央处理器24、存储器27(通常为RAM,但是也可以包括ROM、闪存RAM等)、输入/输出控制器28、用户显示器22(诸如显示器或经由显示适配器的触摸屏)、用户输入接口26(可以包括一个或多个控制器和与用户输入或诸如键盘、鼠标、WiFi/蜂窝无线电、触摸屏、麦克风/扬声器等的设备相关联,并可以被紧耦合到I/O控制器28)、固定存储23(诸如硬盘驱动器、闪存存储、光纤通道网络、SAN设备、SCSI设备等等)以及可移动的介质组件25(可以***作地控制和接收光盘、闪存驱动器等等)。
总线21允许中央处理器和存储器27之间的数据通信,如前所述,存储器27可以包括只读存储器(ROM)或闪存存储器(都未示出)以及随机存取存储器(RAM)(未示出)。RAM可以包括在其中加载了操作***和应用程序的主存储器。ROM或闪存存储器可以在其它代码中包含基本输入-输出***(BIOS),基本输入-输出***(BIOS)控制诸如与外设组件的交互的基本硬件操作。驻留于计算机20的应用可以被存储在计算机可读介质上或可以经由计算机可读介质被访问,这里的计算机可读介质可以诸如是硬盘驱动器(例如,固定存储23)、光盘驱动器、软盘或其它存储介质25。
固定存储23可以与计算机20集成,或可以是分立的并可以通过其它接口被访问。网络接口29可以经由电话链接提供到远程服务器的直接连接,经由互联网服务提供商(ISP)提供到互联网的直接连接,或经由通过POP(存在点)或其它技术到互联网的直接网络链接提供到远程服务器的直接连接。网络接口29可以使用无线技术提供这样的连接,所述无线技术包括数字蜂窝电话连接、蜂窝数字分组数据(CDPD)连接、数字卫星数据连接等。例如,如图2所示,网络接口29可以允许计算机经由一个或多个局域网、广域网或其它网络与其它计算机通信。
许多其它设备或组件(未示出)可以以相似的方式被连接(例如,文件扫描仪、数字摄像头等)。反过来,实践本公开不必存在图1示出的所有组件。组件可以以不同于示出的方式被互连。诸如图1所示的计算机的操作是本领域的人员所公知的,所以在本申请中不进行详细的讨论。实现本公开的代码可以被存储在诸如存储器27、固定存储23、可移动介质25中的一个或多个的计算机可读存储介质中,或可以被存储在远程存储位置上。
图2示出根据本公开主题的实现的示例网络布置。诸如本地计算机、智能手机、平板计算设备等的一个或多个客户端10、11可以经由一个或多个网络7连接到其它设备。网络可以是本地网络、广域网络、互联网或任何其它合适的通信网络,并且可以被实现在包括有线网络和/或无线网络的任何合适的平台上。客户端可以与一个或多个服务器13和/或数据库15通信。设备可以客户端10、11直接访问,或一个或多个其它设备可以提供中介访问,诸如在服务器13提供对存储在数据库15中的资源的访问的情况下。客户端10、11还可以访问远程平台17或由远程平台17提供的服务,诸如云计算布置和服务。远程平台17可以包括一个或多个服务器13和/或数据库15。
更一般地,本公开主题的各种实现可以包括或被实现为计算机实现的过程和用于实践那些过程的装置的形式。实现还可以被实现为计算机程序产品的形式,所述计算机程序产品具有包含指令的计算机程序代码,所述指令被实现在非暂时和/或可有形体现的介质中,诸如软卡盒、CD-ROM、硬盘驱动器、USB(通用串行总线)驱动器或任何其它机器可读存储介质,其中,当计算机程序代码被加载进计算机并被计算机执行时,计算机成为用于实践本公开主题的实现的装置。实现还可以被实现为计算机程序代码的形式,例如,不管是存储在存储介质中、被加载进计算机和/或被计算机执行、还是通过某些传输介质被传输,诸如通过电线/电缆,通过光纤或通过电磁辐射,其中,当计算机程序代码被加载进计算机并被计算机执行时,计算机成为用于实践本公开主题的实现的装置。当被实现在通用微处理器上时,计算机程序代码段配置微处理器来生成特定逻辑电路。在某些配置中,存储在计算机可读存储介质上的计算机可读指令集可以被通用处理器实现,这可以将通用处理器或包含通用处理器的设备转换为被配置为实现或执行指令的专用设备。实现可以使用硬件来实现,所述硬件可以包括处理器,诸如通用微处理器和/或以硬件和/或固件实现根据本公开主题的实现的所有或部分技术的专用集成电路(ASIC)。处理器可以被耦合到存储器,诸如RAM、ROM、闪存、硬盘或任何其它能存储电子信息的设备。存储器可以存储适于被处理器执行来执行根据本公开主题的实现的技术的指令。
根据本公开主题的实现,第一用户可以访问在线应用商店并通过任何适用的方法请求应用,适用的方法诸如通过将与应用相关的搜索词语输入进搜索查询框、通过选择外部链接、通过作为用户操作(例如,访问网页,选择更新选项等)的结果的自动过程等。该布置可以将用户和/或用户账户识别为接收所请求的应用的标准版本的主要组的一部分。可以基于任何适用的推理特征,诸如用户历史(例如,选择应用标准版本的用户、不修改设备的至少阈值数的默认设置的用户、使用设备或应用没有耗费阈值量的时间的用户等)、用户设备(例如设备模型、设备类型、连接到设备的外设等)、设备软件(例如,安装在设备上的软件的类型、安装在设备上的软件的版本等)等,用户和/或用户账户可以被识别为主要组的一部分。主要组可以是包含可以请求和/或接收应用的大多数用户的组。作为示例,主要组可以是旨在接收和使用给定应用的公开版本(即标准版本)的普通公众。如图3中的步骤310所示,可以提供应用的标准版本给被识别为主要组的一部分的用户。可以经由用户与之交互来接收应用的应用商店向用户提供标准的应用。作为说明性示例,如图4a所示,用户可以使用移动设备通过选择经由移动设备可访问的应用商店启动按钮来访问应用商店400。用户可以将与所旨在的应用相关的文本(例如,“Temperature”)输入进搜索输入框410,并可以选择搜索按钮420来发起搜索。该布置可以访问用户设置,并确定用户选择了禁止在移动电话上下载应用的测试版本的设置。因此,该布置可以将该用户识别为主要用户组的一部分,并向用户提供应用430的标准(即,非测试)版本。随后,用户可以选择应用430的标准版本,并且标准应用可以被下载和安装在移动设备上供用户以预期的方式使用。
根据本公开主题的实现,如图3中的步骤320所示,第二用户可以访问在线应用商店,并通过任何适用的方法请求应用,适用的方法诸如通过将与应用相关的搜索词语输入进搜索查询框、通过选择外部链接、通过作为用户动作(例如,访问网页,选择更新选项等)的结果的自动过程等。该布置可以将用户和/或用户账户识别为接收所请求的应用的辅助版本的辅助组的一部分。在步骤330,基于任何适用的推理特征,诸如用户历史(例如,选择应用的测试版本的用户,修改设备的至少阈值数的默认设置的用户,使用设备或应用耗费阈值量的时间的用户等)、用户设备(例如,设备模型、设备类型、连接到设备的外设等)、设备软件(例如,安装在设备上的软件的类型、安装在设备上的软件的版本等)等,第二用户和/或相关的用户账户可以被识别为辅助组的一部分。辅助组可以是包含来自可以请求和/或接收应用的用户的整个集合的用户的子集的组。作为示例,辅助组可以包含偏好下载应用的测试版本(例如,还没有对普通公众发布并且可能处在测试阶段的应用的更新版本)的高级用户集。第二用户可以自动地被识别为辅助组的一部分,使得在不需要第二用户明确地将其自己识别为辅助组的一部分的情况下,该布置可以自动地访问允许将第二用户识别为辅助组的一部分的数据。
根据本公开主题的实现,用户可以是多个组的一部分,并且可以基于此处公开的标准被指定为多个组的一部分。作为示例,基于用户历史和用户设置,用户可以是测试组和标准组两者的一部分。开发者可以发布应用的多个版本,并且可以指定接收应用的各版本的用户组。因此,是多个组的一部分的用户可以具有下载和/或安装应用的多个版本的选项。作为示例,开发者可以发布应用的标准版本和测试版本。是测试组和标准组的一部分的用户可以使用应用商店请求应用。可以将测试版本和标准版本两者提供给用户,并且该用户可以被给予下载和/或安装应用两个版本中的任何一个或两者的选项。
如图3中的步骤340所示,可以将应用的辅助版本提供给被识别为辅助组的一部分的用户。可以经由用户与之交互来搜索应用的应用商店将应用的辅助版本提供给用户。作为说明性示例,如图4b所示,用户可以使用移动设备通过选择经由移动设备可访问的应用商店启动按钮来访问应用商店401。用户可以将对应于用户旨在下载的应用的文本(例如,“Temperature”)输入进搜索输入框410,并可以选择搜索按钮420来发起搜索。该布置可以访问用户历史,并确定用户已经在她的移动设备上修改了12%的默认用户设置,并且可以基于12%的修改和10%的阈值修改值来确定用户为辅助组用户的一部分。因此,基于此确定,该布置可以向用户提供应用440的测试版本。可以理解,任何阈值可以被用于所做的改变的数目,或用于此处描述的其它阈值,并且给出的具体值仅是说明性的
类似地,如图4c所示,用户可以使用搜索框412和搜索按钮422通过使用应用设备访问应用商店402来搜索应用。如此处所讨论的,基于任何适用的因素,该布置可以确定用户是辅助组用户的一部分,并向用户提供应用430的标准版本以及应用440的测试版本两者。值得注意的是,根据该示例,基于该布置将其识别为辅助组用户的一部分,被识别为辅助组的一部分的用户可以具有下载与主要组用户相同的应用版本的应用或被提供给此用户的应用的辅助版本的选项。如此处使用的,应用的单一版本可以被提供给多个用户,使得可能有应用的相同版本在多个设备上的多个具体安装实例。作为特定示例,基于应用的温度的测试版本可以被安装在400个设备上,400设备已经基于此处公开的准则被识别为测试用户设备。
根据本公开主题的实现,该布置可以接收来自接收应用的辅助版本的用户使用应用的交互数据。交互数据可以是该布置被配置来收集的任何适用的数据,并且可以包括诸如应用效率、时间流逝(例如,激活应用需要的时间、在应用中的延迟、服务器通信时间等)、时延信息、应用特定数据(例如,专有数据,使用数据,页面/区域视图数据等)、项目选择信息(例如,按钮选择、链接选择、专有项选择等)、项目请求信息(例如,数据请求、组件请求、对象请求等)等的数据。例如,一种布置可以接收对应于应用的辅助版本的用户访问的应用的区域(诸如用户访问的广泛页面类别下的特定子页面的列表)的交互数据。交互数据可以被收集为由应用、布置或使用应用的辅助版本的用户导致的任何适用的交互事件的结果,诸如用户输入、用户评论、用户生成的报告、用户的决定、时间计算、错误、预定的收集信号等。例如,当应用的辅助版本的用户从该应用的辅助版本内选择“Report”按钮时,交互数据可以被收集。在预定时间期间或基于规则,可以将交互数据提供给该布置。预定时间可以由该布置设置,使得在设置的时间之前收集的交互数据在预定时间被传送给本地或远程服务器。用于提供交互数据的一个或多个规则可以基于任何适用的标准,诸如被收集的交互数据的量、对交互数据的请求、数据的优先级水平(例如,基于高优先级的交互事件、安全问题等)、动态确定的时间(例如,来自事件、来自以前的交互数据的传输、在随后调度的传输之前等)等。在传送收集的数据给本地或远程的服务器之前或之后,可以生成基于收集的数据的测试报告,并且基于收集的数据的测试报告可以被开发者用于更新应用的辅助版本。该测试报告可以包含用户输入数据、应用错误数据、应用事件数据、用户评论或类似信息的文本表示或图形表示。作为示例,包含对应于应用的特定部分的所有交互数据的日常报告可以由应用的辅助版本生成,并被经由卫星(与中央服务和安装有此应用的辅助版本的设备两者通信)传送给对应于该应用的中央服务器。一旦记录了阈值数的交互事件,或一旦某个量的时间已期满,基于交互事件的每个发生,可以生成该测试报告。作为示例,交互事件信息可以由安装在用户设备上的测试应用传送到中央服务器。基于从交互事件信息中提取的任何错误,中央服务器可以生成日常测试报告,并经由电子邮件将该日常测试报告提供给开发者。在传送由应用的第二版本收集的交互数据的至少子集之前,可能需要用户许可。在诸如当允许用户选择设备设置时、当提供应用的第二版本时、当安装应用的第二版本时、当发起应用的第二版本时、当传送数据时等的任何适用时间,都可以请求许可。用户可以能够配置启用或禁用交互数据和/或与交互数据相关的报告的传输的设置。
根据本公开主题的实现,如此处公开的,用户或用户账户可以与可能是确定用户是哪个组的一部分的因素的状态相关联。例如,用户可以被分类为测试者,并因此被放在测试组。出于任何适用的原因,诸如状态更改请求(例如,由用户、该布置或***仲裁者发起)、定期修改(例如,在预定的或动态确定的时间量之后)、一个或多个规则(例如,保留或丢失阈值量的点、接受或拒绝应用的一个或多个版本,改变位置、修改行为等)等,用户状态可以被修改。作为示例,用户可以被识别为辅助用户组的一部分,并经由在线应用商店将应用的测试版本提供给该用户。该用户可以拒绝应用的测试版本,并选择下载应用的标准版本。基于对应用的测试版本的拒绝,可以将应用的标准版本提供给该用户,并且,此外,该用户的状态可以从测试用户改变为普通用户。
根据本公开主题的实现,值可以与用户账户相关联。该值可以是任何适用的诸如点、星、水平等的通货。基于用户做出的应用版本决定,该值可以被调整,并且该对于用户可以是可见的或可以不是可见的。值可以被提供给用户(例如,当用户访问用户的账户时被显示给用户,经由电子邮件或消息传送给用户,等),并且可以激励用户来接收附加值或从其账户移除值。替选地,值可以与用户相关联,但是不使得对此用户(例如,与账户相关联,但是不被可见地显示给此用户)可用。值得注意的是,该布置可以利用与用户账户相关联的值来提供益处给用户,和/或利用用户组来识别用户。作为示例,经由在线应用商店,可以向被识别为辅助用户的用户呈现供下载的应用的测试版本。该用户可以拒绝此应用的测试版本,并选择下载此应用的标准版本。因此,可以将此应用的标准版本提供给用户,并且先前分配给用户的用户账户的点数可以被从该用户账户移除。更具体地,如果初始向该用户账户分配了150点,基于对应用的测试版本的拒绝,可以从150点中扣除30点(即,120点保留分配给该用户账户)。根据这个示例,如果少于100点被分配给该用户的账户,该布置可以被配置为将用户的状态更改为普通用户。因此,如果该用户拒绝附加的测试应用,则该用户可能损失30点,导致总共仅90点分配给该用户账户。基于100点最小规则,该用户的状态可以改变,并且其可以被从测试用户组移除,并成为普通组的一部分。类似地,作为另一个示例,普通用户的账户可以被初始地分配0点。该用户可以请求四个不同应用的测试版本,每个请求被奖励30点。因此,该用户的账户可以被分配120点,并且基于满足100点的阈值,该用户的状态可以从普通用户更改为测试用户,并且其可以被从普通组移除,并被增加到测试组。
根据本公开主题的实现,应用可以基于交互事件信息和/或基于应用的第二版本生成的测试报告被修改。作为示例,基于亚伯对应用的测试版本的使用,可以生成测试报告。该测试报告可以指示在用户从测试应用内选择B选项以后的48%的时间,此应用的测试版本停止响应用户输入。因此,可以修改此测试应用以移除选项B,来避免测试报告中识别的问题。一个或多个修改可以由开发者做出,或由该布置自动地做出。修改可以被自动部署到用户组(例如,接收应用的辅助版本的用户组、报告由修改消除的交互事件的用户组等)或可以被合并进应用的高级版本。经由应用商店,使用如本文公开的与提供应用的第二版本相同的技术,可以提供应用的高级版本。
根据本公开主题的实现,用户可以为获取不同版本的应用而支付不同量的诸如现金、账户点、星、水平等的任何适用的价值。例如,与相同应用的测试版本相比,应用的标准版本可能比相同应用的测试版本花费用户更大量的钱。替选地,在以点为基础的布置中,与选择下载标准版本相比,选择下载应用的测试版本可能从用户的账户中扣除更少的点。值得注意的是,可以更多地激励用户下载应用的测试版本而不是应用的标准版本,这可以允许开发者从更广泛的测试应用用户基础收集更多的数据。
在本公开主题的示例中,亚伯可以通过选择对应于应用商店的按钮来访问在其移动电话上的应用商店。从应用商店内,亚伯可以将搜索词语“纸牌游戏”输入进搜索框来发起与搜索词语相关的搜索。基于亚伯拒绝下载应用的测试版本以及替选地选择相同应用的标准版本的先前的下载历史,该布置可以确定亚伯是主要用户组的一部分。因此,基于搜索词语和亚伯是主要用户组的一部分的确定,应用商店可以向亚伯提供应用“纸牌游戏”的标准版本。鲍勃可以通过选择对应于应用商店的图标来访问在他的平板电脑上的应用商店。从应用商店内,鲍勃可以将搜索词语“纸牌游戏”输入进搜索框来发起与搜索词语相关的搜索。基于鲍勃对他的平板电脑上的24%的默认设置的修改,该布置可以确定鲍勃是辅助用户组的一部分。因此,基于搜索词语和此确定,应用商店可以向鲍勃提供应用“纸牌游戏”的标准版本和测试版本两者。鲍勃可以选择下载和安装应用的测试版本,并随后发起与应用的测试版本的交互。该测试应用可以记录诸如不正常的时延时间以及应用错误的交互事件,并将记录的交互事件传送给服务器。该服务器可以生成包含关于时延时间和应用错误的信息的报告,并将报告提供给利用此报告来修改应用的后续版本的应用开发者。该应用的后续版本可以作为该应用的辅助版本或是作为该应用的标准(例如,非测试)版本被部署给鲍勃和/或测试用户组。如此处公开的,服务器可以是任何适用的实体,诸如中央服务器、本地服务器、应用服务器、移动设备、应用存储等。值得注意的是,事件报告、记录和报告生成可以由被配置为进行这样的任务的任何***进行。
出于解释的目的,参照特定实现描述了实现上述描述。然而,上面的说明性讨论不旨在是详尽的或将本公开主题的实现限制到公开的精确形式。鉴于上述教导,许多修改和变化是可能的。选择并描述了实现,以解释本公开主题的实现的原理和它们的实际应用,从而使本领域的其他技术人员能利用这些实现以及带有可能是适合于预期的特定用途的各种修改的各种实现。
Claims (24)
1.一种方法,包括:
经由在线应用商店向第一用户提供应用的第一版本;
接收来自第二用户的对所述应用的请求;
自动地将所述第二用户识别为测试用户;
基于所述请求和所述自动地将所述第二用户识别为测试用户的步骤,经由所述在线应用商店向所述第二用户提供所述应用的与所述第一版本不同的第二版本。
2.根据权利要求1所述的方法,进一步包括将所述第二用户识别为标准用户,并向所述第二用户提供所述应用的所述第一版本和所述第二版本。
3.根据权利要求1所述的方法,进一步包括:
接收来自所述第二用户的第二版本应用拒绝;以及
向所述第二用户提供所述应用的所述第一版本。
4.根据权利要求3所述的方法,进一步包括:基于接收来自所述第二用户的所述第二版本应用拒绝,改变用户的状态。
5.根据权利要求3所述的方法,进一步包括:基于接收来自所述第二用户的所述第二版本应用拒绝,从测试用户组中移除所述第二用户。
6.根据权利要求1所述的方法,其中,所述第二用户是至少基于第一推理特征而被识别为测试用户的。
7.根据权利要求1所述的方法,其中,所述第一推理特征是用户设备。
8.根据权利要求3所述的方法,其中,所述第一推理特征是基于用户历史。
9.根据权利要求1所述的方法,其中,所述第一推理特征是基于用户偏好。
10.根据权利要求1所述的方法,进一步包括:
通过所述应用的所述第二版本,接收交互事件;
基于所接收的交互事件,接收测试报告。
11.根据权利要求10所述的方法,其中,所述交互事件是从包括用户输入、应用错误、应用事件和用户评论的组中选择的。
12.根据权利要求9所述的方法,其中,所述测试报告包括从包括用户输入数据、应用错误数据、应用事件数据和用户评论数据的组中选择的数据。
13.根据权利要求10所述的方法,进一步包括:
在接收第一交互事件之后,生成所述测试报告;以及
仅基于所述第一交互事件,提供所述测试报告。
14.根据权利要求10所述的方法,进一步包括:
在接收阈值数的交互事件之后,生成所述测试报告;以及
基于所述阈值数的交互事件,提供所述测试报告。
15.根据权利要求10所述的方法,进一步包括:
基于在一时间范围内接收到的交互事件,生成所述测试报告;以及
在所述时间范围期满之后,提供所述测试报告。
16.根据权利要求10所述的方法,进一步包括:
基于所述测试报告,修改所述应用的第二版本;以及
向第三用户提供经修改的所述应用的第二版本。
17.根据权利要求16所述的方法,其中,所述第三用户和所述第二用户是相同的。
18.根据权利要求16所述的方法,其中,所述第三用户和所述第二用户被识别为同一测试用户组的一部分。
19.根据权利要求16所述的方法,其中,所述第三用户和所述第二用户被识别为不同的测试用户组的一部分。
20.根据权利要求1所述的方法,其中,所述第一用户被要求为所述第一应用支付第一值,并且所述第二用户被要求为所述第二应用支付第二值。
21.根据权利要求20所述的方法,其中,所述第二值小于所述第一值。
22.一种***,包括:
存储应用的第一和第二版本的版本信息的数据库;
与所述数据库通信的处理器,所述处理器被配置为:
经由在线应用商店向第一用户提供所述应用的第一版本;
接收来自第二用户的对所述应用的请求;
自动地将所述第二用户识别为测试用户;
基于所述请求和所述自动地将所述第二用户识别为测试用户的步骤,经由所述在线应用商店向所述第二用户提供所述应用的第二版本。
23.根据权利要求22所述的***,进一步被配置为:
接收来自所述第二用户的第二版本应用拒绝;以及
向所述第二用户提供所述应用的所述第一版本。
24.根据权利要求23所述的***,进一步被配置为:基于接收来自所述第二用户的所述第二版本应用拒绝,改变用户的状态。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/891,737 US9645914B1 (en) | 2013-05-10 | 2013-05-10 | Apps store with integrated test support |
US13/891,737 | 2013-05-10 | ||
PCT/US2014/037321 WO2014182914A1 (en) | 2013-05-10 | 2014-05-08 | Apps store with integrated test support |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105339893A true CN105339893A (zh) | 2016-02-17 |
CN105339893B CN105339893B (zh) | 2019-01-04 |
Family
ID=50884550
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480035857.5A Active CN105339893B (zh) | 2013-05-10 | 2014-05-08 | 具有集成测试支持的应用商店 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9645914B1 (zh) |
EP (1) | EP2994828B1 (zh) |
CN (1) | CN105339893B (zh) |
WO (1) | WO2014182914A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10192199B2 (en) | 2011-11-16 | 2019-01-29 | Microsoft Technology Licensing, Llc | Enabling service features within productivity applications |
US10235150B2 (en) * | 2014-12-04 | 2019-03-19 | Google Technology Holdings LLC | System and methods for touch pattern detection and user interface adaptation |
US9772812B1 (en) * | 2016-03-28 | 2017-09-26 | Amazon Technologies, Inc. | Device-layout determinations |
US10310718B2 (en) | 2016-06-22 | 2019-06-04 | Microsoft Technology Licensing, Llc | Enabling interaction with an external service feature |
US20180018161A1 (en) * | 2016-07-13 | 2018-01-18 | Blackberry Limited | Updating firmware at enterprise devices |
US20180239824A1 (en) * | 2017-02-20 | 2018-08-23 | Microsoft Technology Licensing, Llc | Targeted feedback systems and methods |
US11036476B2 (en) * | 2018-08-03 | 2021-06-15 | Vmware, Inc. | Systems and methods for building an application from a console |
US20200042294A1 (en) * | 2018-08-03 | 2020-02-06 | Vmware, Inc | Systems and methods for building an application from a console |
US10841185B2 (en) * | 2018-09-21 | 2020-11-17 | Pivotal Software, Inc. | Platform-integrated IDE |
US11201949B2 (en) * | 2019-01-28 | 2021-12-14 | King.Com Ltd. | Computer implemented method and computer device |
US11769038B2 (en) * | 2019-04-12 | 2023-09-26 | Optum, Inc. | Contextually optimizing routings for interactions |
US11966636B2 (en) * | 2021-09-30 | 2024-04-23 | Intuit Inc. | Methods and systems for dynamic compression and transmission of application log data |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100082813A1 (en) * | 2008-09-29 | 2010-04-01 | Microsoft Corporation | Multiple Parallel User Experiences Provided By a Single Set of Internet Hosting Machines |
US20130030868A1 (en) * | 2011-07-25 | 2013-01-31 | Cbs Interactive, Inc. | Scheduled Split Testing |
CN102915504A (zh) * | 2012-10-09 | 2013-02-06 | 中国联合网络通信集团有限公司 | 软件发布方法和装置 |
Family Cites Families (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6266788B1 (en) * | 1998-07-01 | 2001-07-24 | Support.Com, Inc. | System and method for automatically categorizing and characterizing data derived from a computer-based system |
KR100458430B1 (ko) * | 1999-09-27 | 2004-12-03 | 주식회사 메디칼스탠다드 | 소프트웨어 상품을 이용한 광고 방법 |
US20020069263A1 (en) * | 2000-10-13 | 2002-06-06 | Mark Sears | Wireless java technology |
US7146603B2 (en) * | 2001-01-05 | 2006-12-05 | Borland Software Corporation | Context programming in object-oriented environments |
US6754817B2 (en) * | 2001-01-25 | 2004-06-22 | Dell Products L.P. | Apparatus and method for detecting a change in system hardware configuration to reduce the amount of time to execute a post routine |
US20040015868A1 (en) | 2001-05-10 | 2004-01-22 | International Business Machnies Corporation | Beta version processing system |
US7231637B1 (en) | 2001-07-26 | 2007-06-12 | Mcafee, Inc. | Security and software testing of pre-release anti-virus updates on client and transmitting the results to the server |
US7124401B2 (en) * | 2002-09-03 | 2006-10-17 | Sap Aktiengesellschaft | Testing versions of applications |
US20040128651A1 (en) * | 2002-12-31 | 2004-07-01 | Michael Lau | Method and system for testing provisioning and interoperability of computer system services |
US7409463B2 (en) * | 2003-12-04 | 2008-08-05 | International Business Machines Corporation | On-demand active role-based software provisioning |
US8239858B2 (en) * | 2004-02-25 | 2012-08-07 | Research In Motion Limited | Method and system for selecting a program for download |
US8255879B2 (en) * | 2004-05-17 | 2012-08-28 | Ca, Inc. | Method and apparatus for improving a software product |
US7555532B2 (en) * | 2004-09-23 | 2009-06-30 | Orbital Data Corporation | Advanced content and data distribution techniques |
US7958486B2 (en) * | 2005-04-22 | 2011-06-07 | Sap Ag | Methods and systems for data-focused debugging and tracing capabilities |
US7996255B1 (en) * | 2005-09-29 | 2011-08-09 | The Mathworks, Inc. | System and method for providing sales leads based on-demand software trial usage |
US20070240102A1 (en) * | 2006-03-02 | 2007-10-11 | International Business Machines Corporation | Software development tool for sharing test and deployment assets |
US7627745B2 (en) * | 2006-06-30 | 2009-12-01 | International Business Machines Corporation | Method, system and program product for verifying configuration of a computer system |
US7874008B2 (en) * | 2006-08-29 | 2011-01-18 | International Business Machines Corporation | Dynamically configuring extensible role based manageable resources |
US7823138B2 (en) * | 2006-11-14 | 2010-10-26 | Microsoft Corporation | Distributed testing for computing features |
US8136090B2 (en) * | 2006-12-21 | 2012-03-13 | International Business Machines Corporation | System and methods for applying social computing paradigm to software installation and configuration |
US20080301672A1 (en) * | 2007-05-30 | 2008-12-04 | Google Inc. | Installation of a Software Product on a Device with Minimal User Interaction |
US8214804B2 (en) | 2007-12-31 | 2012-07-03 | Overstock.Com, Inc. | System and method for assigning computer users to test groups |
US8566895B2 (en) * | 2008-02-15 | 2013-10-22 | Time Warner Cable Inc. | System and method for incremental implementation of new service capabilities |
US7908521B2 (en) * | 2008-06-25 | 2011-03-15 | Microsoft Corporation | Process reflection |
US8433785B2 (en) * | 2008-09-16 | 2013-04-30 | Yahoo! Inc. | System and method for detecting internet bots |
US20100153780A1 (en) | 2008-12-12 | 2010-06-17 | Sergej Kirtkow | Techniques for generating a reusable test script for a multiple user performance test |
US8271950B2 (en) | 2009-07-06 | 2012-09-18 | Microsoft Corporation | Test generation from captured user interface status |
WO2011067781A1 (en) * | 2009-12-02 | 2011-06-09 | Novatium Solutions (P) Ltd | Management of user profiles in a cloud based managed utility computing environment |
US20110225139A1 (en) * | 2010-03-11 | 2011-09-15 | Microsoft Corporation | User role based customizable semantic search |
US8631390B2 (en) * | 2010-04-02 | 2014-01-14 | Apple Inc. | Archiving a build product |
US8813039B2 (en) * | 2010-04-14 | 2014-08-19 | International Business Machines Corporation | Method and system for software defect reporting |
WO2012151132A1 (en) * | 2011-04-30 | 2012-11-08 | Vmware, Inc. | Dynamic management of groups for entitlement and provisioning of computer resources |
US8762113B2 (en) | 2011-06-03 | 2014-06-24 | Sony Computer Entertainment America Llc | Method and apparatus for load testing online server systems |
US10067754B2 (en) * | 2011-08-11 | 2018-09-04 | International Business Machines Corporation | Software service notifications based upon software usage, configuration, and deployment topology |
US8862947B1 (en) * | 2011-12-29 | 2014-10-14 | Google Inc. | Application version deployment using crash reports |
US8892954B1 (en) * | 2011-12-29 | 2014-11-18 | Google Inc. | Managing groups of application versions |
US9792585B2 (en) * | 2012-06-21 | 2017-10-17 | Google Inc. | Mobile application management |
WO2014022743A2 (en) * | 2012-08-02 | 2014-02-06 | Solstice Consulting, LLC | Mobile build, quality and deployment manager |
US9009536B2 (en) * | 2012-10-02 | 2015-04-14 | International Business Machines Corporation | Test case production utilizing problem reports |
US20140189648A1 (en) * | 2012-12-27 | 2014-07-03 | Nvidia Corporation | Facilitated quality testing |
US8689108B1 (en) * | 2013-09-24 | 2014-04-01 | Palantir Technologies, Inc. | Presentation and analysis of user interaction data |
US9396092B1 (en) * | 2014-03-26 | 2016-07-19 | Amazon Technologies, Inc. | Software testing with feedback acquisition |
US9405665B1 (en) * | 2015-05-22 | 2016-08-02 | Amazon Technologies, Inc. | Application testing based on user input captured during a trial period and priority scheme analysis |
-
2013
- 2013-05-10 US US13/891,737 patent/US9645914B1/en active Active
-
2014
- 2014-05-08 CN CN201480035857.5A patent/CN105339893B/zh active Active
- 2014-05-08 WO PCT/US2014/037321 patent/WO2014182914A1/en active Application Filing
- 2014-05-08 EP EP14728062.2A patent/EP2994828B1/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100082813A1 (en) * | 2008-09-29 | 2010-04-01 | Microsoft Corporation | Multiple Parallel User Experiences Provided By a Single Set of Internet Hosting Machines |
US20130030868A1 (en) * | 2011-07-25 | 2013-01-31 | Cbs Interactive, Inc. | Scheduled Split Testing |
CN102915504A (zh) * | 2012-10-09 | 2013-02-06 | 中国联合网络通信集团有限公司 | 软件发布方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
EP2994828A1 (en) | 2016-03-16 |
US9645914B1 (en) | 2017-05-09 |
CN105339893B (zh) | 2019-01-04 |
EP2994828B1 (en) | 2019-04-03 |
WO2014182914A1 (en) | 2014-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105339893A (zh) | 具有集成测试支持的应用商店 | |
CN103380423B (zh) | 用于私人云计算的***和方法 | |
US10667151B2 (en) | Coverage solution recommendation tool | |
CN109636504A (zh) | 信息处理方法及装置、电子设备及存储介质 | |
EP3232338A1 (en) | Cloud platform application-oriented service recommendation method, device and system | |
Watson et al. | Circular business models in the mobile phone industry | |
CN112036577B (zh) | 基于数据形式的应用机器学习的方法、装置和电子设备 | |
CN108460590B (zh) | 信息推荐的方法、装置及电子设备 | |
CN106656839A (zh) | 资源转移方法及装置 | |
CN105939362A (zh) | 用户账号管理方法及装置 | |
CN110233741B (zh) | 服务计费方法、装置、设备及存储介质 | |
CN110728519B (zh) | 拒付任务的处理方法、装置和服务器 | |
CN107193607A (zh) | 用于更新代码文件的方法和装置、存储介质、处理器以及终端 | |
CN106254404A (zh) | 应用软件权限推荐方法、装置和*** | |
CN105610768A (zh) | 网络操作处理方法及装置 | |
CN107067559A (zh) | 一种实现充电桩互联充电的方法和装置 | |
CN110633120A (zh) | 组态软件控件处理方法、装置、服务器、用户终端及*** | |
CN111444090A (zh) | 区块链中的合约测试方法、装置、电子设备及存储介质 | |
CN114331435A (zh) | 一种基于区块链的任务众包方法及装置 | |
CN116955148A (zh) | 业务***测试方法、装置、设备、存储介质及产品 | |
CN111522933A (zh) | 一种对话流程控制方法、装置、设备及介质 | |
KR101471020B1 (ko) | 보험상품 품질검증 시스템 | |
CN110333927B (zh) | 界面跳转方法、装置、服务器及存储介质 | |
JP7528862B2 (ja) | 情報処理装置、情報処理方法、及び、プログラム | |
CN111198986B (zh) | 信息发送方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: American California Applicant after: Google limited liability company Address before: American California Applicant before: Google Inc. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |