CN102204167B - 测试应用编程接口(api)调用的方法、系统和响应仿真器 - Google Patents

测试应用编程接口(api)调用的方法、系统和响应仿真器 Download PDF

Info

Publication number
CN102204167B
CN102204167B CN200880131838.7A CN200880131838A CN102204167B CN 102204167 B CN102204167 B CN 102204167B CN 200880131838 A CN200880131838 A CN 200880131838A CN 102204167 B CN102204167 B CN 102204167B
Authority
CN
China
Prior art keywords
api calls
api
test
test api
respond
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
Application number
CN200880131838.7A
Other languages
English (en)
Other versions
CN102204167A (zh
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.)
eBay Inc
Original Assignee
eBay Inc
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 eBay Inc filed Critical eBay Inc
Priority to CN201510294055.2A priority Critical patent/CN104980313A/zh
Publication of CN102204167A publication Critical patent/CN102204167A/zh
Application granted granted Critical
Publication of CN102204167B publication Critical patent/CN102204167B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • 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
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Abstract

除了别的以外,本文献讨论了测试应用编程接口(API)调用的方法,该方法包括接收标识与web服务及API调用相关联的schema的数据。多个示例实施例可关于访问与schema相关联的数据贮存器,以标识对应于API调用的API响应。在一些示例实施例中,基于确定API调用是否有效,消息被返回。示例消息可仿真来自web服务的API响应。

Description

测试应用编程接口(API)调用的方法、系统和响应仿真器
技术领域
该专利文献一般涉及软件测试,并且更具体地,但非限制性地,涉及用于测试可执行指令的系统和方法。
背景技术
软件开发人员通常在测试环境中测试代码,以便识别潜在的错误并确定代码是否可能在生产环境中是可操作的。
附图说明
附图(其并不必成比例)中,遍及多个视图,相似的标号描述本质上类似的组件。具有不同字母后缀的相似标号代表本质上类似的组件的不同实例。通过示例而非限制,图一般地阐释在本文献中所讨论的多个实施例。
图1是示出了根据示例实施例的测试可执行指令的示例机器的框图;
图2是示出了根据示例实施例的响应仿真器的扩大图的响应仿真器的框图;
图3是根据示例实施例的高级实体关系图,示出了可被在数据贮存器中维护的多种表;
图4示出了根据示例实施例的用于测试应用编程接口(API)调用的用户接口的实体模型;
图5是示出了根据示例实施例的用于测试API调用的示例方法的流程图;
图6是描绘了客户端-服务器系统的网络图,其中,示例实施例可被部署;
图7是示出了在示例实施例中作为互联的系统的一部分所提供的多个 应用的框图;
图8是高级实体关系图,示出了可被在数据库中维护的多个表,其可被应用所利用并支持应用;
图9示出了在计算机系统的示例形式中的机器的图形表示,在该计算机系统中,用于致使机器执行此处所讨论的方法中的任意一个或多个的指令集可被执行。
具体实施方式
概述
多个示例实施例包括测试诸如应用编程接口(API)调用之列的可执行指令的响应仿真器。示例响应仿真器可接收数据,该数据标识了与web服务及API调用相关联的schema。为了确定API调用是否有效,响应仿真器可访问与schema相关联的数据贮存器,以标识对应于API调用的API响应。用于确定有效性的进一步标准可被在一些示例实施例中使用。响应于API调用并且基于确定API调用是否有效,响应仿真器可返回特定的消息(例如,API响应)。这种响应可仿真本质上与web服务将生成的API响应相类似的API响应,web服务接收并处理了API调用。注意,API调用可经由诸如桌面程序或web浏览器之类的软件用户接口被提交。在一些示例实施例中,响应仿真器和web服务可经由此处所描述的示例用户接口同时辅助对API调用的测试。
针对多个示例实施例,与由网络资源所维护的用于同样的API调用测试集的负载(没有响应仿真器)相比,针对API调用测试集的在联网的服务器和/或数据库资源上的负载可被显著减少。使用示例响应仿真器以用于测试而非使用专用网络资源可导致使用更少的硬件和/或软件组件,并由此,使用响应仿真器可帮助避免测试故障时间。
该概述意欲提供对本专利申请的主题的概述。其并不意欲提供对所要求的权利的排他性或穷尽性的说明。包括了详细的说明,以提供关于本专利申请的主题的进一步信息。
以下详细的说明包括对附图的参考,该附图形成了详细描述的一部 分。图示出了与示例实施例一致的阐释图。这些此处还被称为“示例”的实施例被以足够详细的方式描述,以使得本领域技术人员能够时间所要求权利的主题。实施例可被组合、其他实施例可被利用、或者,可做出结构的、逻辑的和电的变更,只要其不偏离所要求的权利的范围内即可。因此,以下详细的说明并不应当以限制性的方式对待,并且,范围由所附权利要求和其等同物所限定。
在本文献中,如在专利文献中所惯常的,术语“一”或“一个”被使用,以包括一个或多于一个。在此文献中,除非另外指示,术语“或”被用于指非排他性的或,使得“A或B”包括“A而非B”、“B而非A”、以及“A和B”。另外,在此文献中所引用的所有出版物、专利和专利文献通过引用被全部结合于此,虽然它们被单独地通过引用而结合。如果在本文献中和那些通过引用被结合的文献中出现不一致的使用,则在一个或多个所结合的引用中的使用应当被认为是对本文献的使用的补充;针对不可调和的不一致,以在本文献中的使用为准。
示例实施方式
图1是根据示例实施例的示出了辅助对可执行指令的测试的示例机器102的框图100。图1被示出包括机器102,该机器可通信地与数据贮存器110相耦合。
机器102可包括使用处理器以执行指令的任意机器。在示例实施例中,机器102包括虚拟机(未示出),以执行一个或多个指令集。在虚拟环境中(例如,包括虚拟机、虚拟接口或其他虚拟设备),单个物理设备在其他硬件和软件看来可表现为多个逻辑设备(例如,多个虚拟设备)。机器102还被示出为包括用户接口104和响应仿真器106。
虽然未示出,但是,示例机器102可包括一个或多个硬件用户接口(例如,键盘、鼠标、其他输入设备),以使得用户输入将被机器102所处理的信息。在一些示例实施例中,一个或多个硬件用户接口(例如,显示器、扬声器或其他输出设备)可向用户呈现信息(例如,通过显示诸如用户指向、用户选项或任意其他可被呈现给用户的信息之类的输出信 息)。在多个示例实施例中,一个或多个硬件用户接口显示诸如桌面程序接口之类的软件用户接口,以允许对与测试指令集(例如,API调用)相关联的信息的输入,并且,提供对与测试可执行指令集相关联的信息的显示。可执行指令涉及对在机器内部的处理器的操作。示例可执行指令可被包括在在如下之中:源码、机器语言、API、命令、可被应用、程序和/或处理器所执行的消息或其他指令。
一些示例实施例可包括显示包括浏览器程序接口的软件用户接口,以允许关于桌面用户接口的上述功能。以下将更详细地讨论接收和显示测试信息的示例桌面用户接口和示例浏览器程序接口。
示例响应仿真器106用来测试可执行指令的有效性。在多个示例实施例中,响应仿真器106可测试API调用,并且,生成将被传输到API调用的提交者的消息或响应。示例消息可仿真API响应,该响应可基于API调用由web服务所生成。web服务可包括软件系统,该软件系统被设计为在网络上支持互操作的机器到机器的交互。示例web服务可包括可在网络上访问并在宿主所请求的服务的远程系统上执行的web API。
图2是根据示例实施例的示出了响应仿真器206的框图200,该响应仿真器是响应仿真器106的扩大视图。响应仿真器206被示出为包括通信接口208、验证(validation)模块210、访问模块212和响应模块214。
示例通信接口208用于从用户接口104接收信息(例如,识别特定schema和/或API调用),并且将信息传输到访问模块212。schema可包括文献所遵从的规则集,以便根据该机制使文献被认为是有效的。示例机制包括可扩展的标记语言(XML)机制,在该机制下,文献在结构和内容方面受到限制。
示例通信接口208还可从响应模块214接收信息(例如,指示API调用的成功、错误或部分成功的信息),并且,将信息发送给图1的用户接口104。
访问模块212用来访问图1的数据贮存器110,以参考作为指令验证处理的一部分的数据。示例数据贮存器110可位于图1的机器102的内部,或在机器102的外部,只要不偏离所要求权利的主题即可。在数据贮 存器110中所参考的数据可包括机制。在多个示例实施例中,机制可定义具体的API调用和对应的API响应。针对一些示例机制,数据贮存库110可包括表,该表被布置为将API调用和其一个或多个特定输入域与对应的API响应和其特定输出域相关联。数据贮存器110还可包括样本数据(例如,虚数据(dummy data)),以在一个或多个输出域中包括对API调用的仿真响应,该响应可在测试API调用的期间由图1的响应仿真器106(例如,由响应模块214)所生成。
验证模块210用来基于在数据贮存器110中所参考的数据来确定指令集是否有效。在示例实施例中,验证模块210基于访问模块212是否识别API调用的语法且API调用的特定数据域和/或数据值(例如,数据类型、操作数或参数、或其他输入)是否是有效的,以及/或基于有效性的任意其他标准,来确定所接收的API调用是否是有效的。取决于验证模块对API调用的有效性的确定,响应模块214可返回确认消息,该确认消息指示API调用的成功、失败或部分失败。
通信接口208、验证模块210、访问模块212和响应模块214中的每一个的功能科由软件、硬件、或软件和硬件的组合来实现。在一些示例实施例中,模块210、212和214是软件指令,该软件指令被存储在机器可读介质(未示出)上,并且,被与机器102相关联的一个或多个处理器(未示出)执行。
图3是高级实体关系图,其示出了根据示例实施例的可被维护在图1的数据贮存器110中的多个表300。示例表可被图1的响应仿真器106的图2的访问模块212所参考,以实现对诸如由特定机制所定义的API调用之类的指令的测试。
API调用表302可包括用于由机制所定义的每个API调用的记录、可包括用于每个API调用的有效输入域,以及对应于每个API调用的API响应的名字。 
输入域表304可包括针对在机制中的所有API调用所定义的输入域列表。每个输入域可与一个或多个输入子域相关联、该输入子域的名字可被输入到输入域表304中。一些示例输入域和/或输入子域对于特定数据值 (某些字符串、布尔操作符、数字或其他数据输入值)可以是有效的。
API响应表306可包括针对对应于由机制所定义的每个API调用的每个API响应的记录。在示例实施例中,API响应表可包括用于每个API响应的有效输出域,以及对应于每个API响应的API调用的名字。 
输出域表308可包括用于在机制中所定义的所有API响应的输出域的列表。每个输出域可与一个或多个输出子域相关联,输出子域的名字可被输入到输出域表306中。一些示例输出域和/或输出子域对于特定数据值(某些字符串、布尔操作符、数字或其他数据输出值)可以是有效的。
图4示出了根据示例实施例的用于测试API调用的用户接口的实体模型400。实体模型400可代表图1的用户接口104的示例。实体模型用户接口400被示出为包括示出将显示的文本的多个帧、可选择以提供功能的帧,以及/或者包括带有输入信息的域的帧。
注意,实体模型接口400可作为桌面程序或web浏览器或其他用户接口的一部分被呈现给用户。在示例实施例中,通过将插件安装到桌面程序,图1的响应仿真器106可被集成到图1的用户接口104(例如,桌面程序)。针对一些示例实施例,图2的通信接口208用来从用户接口104接收API响应,并且,响应模块用来将消息或API响应返回到用户接口104。
示例帧402用来使得用户输入API类型(例如,XML API类型)和API命令(例如,GET_ITEM请求)。示例帧404用来使得用户输入诸如用户名和密码之类的凭证,用户可通过选择提交按钮406来提交凭证,以接收由帧408所显示的令牌。注意,不同形式的凭证可被请求并随同指向到远程API服务器的API调用(例如,以增强认证),但是,这种凭证可能未被请求或未随同指向图1中的响应仿真器106(其位于图1的机器102上)的API调用。
示例帧410可包括标签,该标签提示用户选择响应仿真器或API服务器,以提交API调用。示例帧412被检查,指示交易API响应仿真器被选择以测试API调用,而用于API_1和API_2服务器的帧414被示出为未被选择。虽然用于选择响应仿真器的一个帧412被示出,但是,用户接口可 允许对与不同schema相关联的API调用的测试。例如,当例如来自每种美型的API的API调用将被提交以用于后续测试时,交易API和购物API中的每一个可被选择。针对一些示例实施例,响应仿真器和web服务可通过检查帧412(其包括响应仿真器框)和检查帧414中的一个或多个框来同时辅助对API调用的测试。
示例帧416可包括文本,该文本提示用户从列表选择特定的测试例。测试例可包括所保存的API调用,该调用用用户希望将来返回的多种编程语言中的任一个所写成。图1的示例用户接口104可辅助队在示例帧416中的测试例的保存。
示例帧418可包括选项卡,在该选项卡下,将被测试的API调用被输入。文本424是被输入到在帧418的请求文本选项卡下的域中的示例API调用。帧418的请求文本选项卡还可包括提交按钮425,当该提交按钮被选择时,其通过将请求指向到合适的响应仿真器或API服务器来启动对API调用的测试。将示出的示例帧420包括API调用的XML视图(例如,当请求文本将XML或其他协议封装在进一步的编程语言或协议中时,其将被使用),并且,示例帧422可包括输入值的列表,该输入值可适于正被提交的特定API调用。
帧426可包括选项卡,在该选项卡下,可显示对API调用的响应。文本432示出了对API调用的示例响应。帧428用来显示对应于呈现在帧426中的被标签为响应文本的码的XML码。帧430可包括选项卡,以显示包括在响应中的输出值以及/或针对特定API响应所定义的所有可能输出值。
图5是根据示例实施例的示出了用于测试API调用的示例方法500的流程图。示例方法500可由图2中的多种示例组件所实现。
在框502,示例方法500可包括接收API调用,以访问一个或多个web服务。针对一些示例实施例,API调用指示与一个或多个web服务相关联的schema。在示例实施例中,schema的统一资源名(URN)经由图1的用户接口104被与API调用一起(例如,如以下所描述的,通过点击图4的提交按钮425)提交。图4示出了示例API调用419和在XML表达 421中编码的示例schema。schema信息和API调用可被发送到图1的响应仿真器106,而数据将被图2的通信模块所接收。在多个示例实施例中,API调用可包括一个或多个被输入值(例如,将被处理以产生输出值)所填充的输入域。
在框504,方法500可包括基于schema来验证API调用。如上所述,图2的访问模块212可接收在API调用中的schema信息,并且访问图1的数据贮存器110,以将在数据贮存器中的API条目与所接收的API调用相匹配。针对多个访问数据贮存器的示例实施例,其可包括基于schema来确定或识别的访问模块212、与schema相关联的数据贮存器110,以及在数据贮存器中确定或识别一个或多个数据库。一个或多个数据库可包括一个表或者进一步与schema相关联的多个表。
在示例实施例中,数据贮存器包括图3的与schema相关联的API调用表302,并且,包括输入在表中的与每个API调用相关的数据。访问模块212可在确定示例API调用表是否包括对应于所接收的API调用的API响应之后访问API调用表,访问模块212可将结果通知给验证模块210。
在图2中,验证模块210可基于不同的标准来确定API调用的有效性。针对示例实施例,验证模块210可基于API调用的语法和从访问模块212接收API调用对应于存储在图3的表302或表306中的API响应的指示来确定API调用是有效的。验证模块210可验证API调用的进一步的标准可包括,确定API调用的输入域被一个或多个值所填充,并且,API调用的输入域与有效的可扩展标记语言(XML)schema数据类型相关联。API调用的无效可基于API调用与schema的语法不一致而被确定。
在示例实施例中,输入域表可包括有效的XML schema数据类型的列表。参照图4,文本423示出了用于示例API调用文本424的示例输入域和输入域值。输入域值被示出为ItemID,而输入域值被示出为数字4036159998。
在示例实施例中,API调用可对应于指令,该指令可由web服务所执行以执行功能。在一些示例实施例中,功能的性能包括基于API调用的一个或多个输入域来生成API响应的一个或多个输出域的值。
在框506,示例方法500可包括从web服务提供仿真了API响应的所仿真的API响应。可替换地或另外,图2的示例响应模块214可生成消息,该消息指示API调用的成功、API调用的失败,或API调用的部分成功。基于成功的API调用,消息可另外包括被值所填充的一个或多个输出域。这种消息可仿真web服务可能已经生成的消息,并且,web服务已经接收了API调用。在图4中,文本437示出了在输出域值中的输出域。在文本437中的输出域被示出为相关ID,而输出域值被示出为零和连字符的字符串。输出域相关ID以及其他输出域可被存储在图3的输出域表308中。示例API响应文本432可本质上与通常由web服务所生成的API响应相类似。
注意,在涉及使用API的应用间的通信的环境中,所要求权利的主题可被用于通过向发送API调用的应用返回API响应来模拟应用的行为。示例响应仿真器106可记录对应于测试API调用的XML响应,使得无需针对每个测试API调用而重新计算XML响应,从而可容易地将XML响应用于将来的测试。在一些示例实施例中,对经常使用的API调用的响应可被组织,使得当API响应将被返回时,可被高效访问。用户或开发人员可访问所记录的XML响应,以将所测试的API调用(例如,被已知为功能性的API调用)合并到测试序列中,该测试序列可减少用于组成用于测试的API调用的序列所花费的整个时间段。
通过对上述示例实施例的实践,API测试处理可由测试者的示例机器所执行,并且可避免使用联网的服务器和/或数据库资源。可替换地或另外,对一些API调用的测试被网络资源(其被包括在网络商业系统中,并且,通信地与测试者的机器相耦合)执行,而其他API调用可在测试者的机器(例如,图1的机器102)上被图1的响应仿真器106所测试。针对多个示例实施例,与由网络资源所维护的用于同样的API调用测试集的负载(没有响应仿真器)相比,针对API调用测试集的在联网的服务器和/或数据库资源上的负载可被显著减少。
使用示例响应仿真器106而非在服务器上的专用应用来用于测试可帮助避免测试故障时间。例如,响应仿真器106可包括比应用服务器的指令 相对更低复杂度的指令,其可导致后者更有可能由于其复杂度和/或多种其他原因(例如,开发测试网络资源离线、网络中断、软件崩溃、硬件故障等)中的任一个而变得不可访问。
图6是描绘客户端-服务器系统600的网络图,在该系统中,示例实施例可被部署。联网系统602以基于网络的市场或发布系统的示例形式经由网604(例如,因特网或广域网(WAN))向一个或多个客户端提供服务器侧的功能。例如,图6示出了web客户端606(例如,浏览器,诸如由在华盛顿州的雷德蒙德的微软公司所开发的Internet Explorer浏览器),以及执行在各自客户端机器610和612上的编程客户端608。
应用程序接口(API)服务器614和web服务器616被通信地耦合到一个或多个应用服务器618,并且分别向其提供编程接口和web接口。应用服务器618宿主一个或多个市场应用620和支付应用622。应用服务器618进而被示出为与一个或多个数据库服务器624相耦合,该数据库服务器辅助对一个或多个数据库626的访问。
市场应用620和支付应用622可存在于生产环境中,其中,应用620和622提供与实际的商业活动相关联的功能和服务,该实际的商业活动与价值和真实用户或实体的主题相关。可替换地或另外,市场应用620和支付应用622可存在于测试环境中(例如,对API调用的测试),该测试环境与虚构的商业活动相关联,该虚构的商业活动与虚构的主题和虚构的用户或实体相关。
市场应用620可向访问联网的系统602的用户提供多个市场功能和服务。类似地,支付应用622可向用户提供多个支付服务和功能。支付应用622可允许用户在账户中积累价值(例如,以商业货币,诸如,美元,或以自由货币,诸如“点”),然后,稍后赎回产品(例如,货物或服务)的所积累的价值,该产品经由市场应用620可被获得。虽然图6中所示出的市场应用和支付应用620和622二者形成了联网的系统602的一部分,但是,应当理解,在可替换的实施例中,支付应用622可形成与联网的系统602分离并且不同的支付服务的一部分。
另外,虽然在图6中所示的系统600利用客户端-服务器体系架构,但 是,本主题当然并不限于这种体系架构,并且,可以同样在例如分布式或点对点的体系架构系统中找到应用。多种市场应用和支付应用620和622还可以被实现为独立的软件程序,其并不必须具有联网能力。
编程客户端608经由API服务器614所提供的编程接口访问由市场应用和支付应用620和622所提供的多种服务和功能。例如,编程客户端608可以是卖家应用(例如,由加利福尼亚的圣何塞的eBay公司所开发的TurboLister应用),以使得卖家以离线的形式在联网的系统602上创作和管理列表,并且,在编程客户端608和联网的系统602之间和自行批处理模式的通信。编程客户端608被示出为包括用户接口609、已存储的schema信息611,以及响应仿真器613,其可本质上与关于图1所描述的用户接口104、响应仿真器106和数据贮存器110相类似。
web客户端606可经由web服务器616所支持的web接口访问多种市场应用和支付应用620和622。如上所述,出于测试API调用的目的,示例web客户端606(例如,web浏览器)可在接口中使用,以提交API调用和相关的信息。
图6还阐释了第三方应用628,其执行在第三方服务器机630上,经由API服务器614所提供的编程接口具有对联网的系统602的编程访问。例如,第三方应用628可通过利用从联网的系统602所检索出的信息来支持一个或多个由第三方宿主的网站上的特征或功能。第三方网站例如可以提供一个或多个促销功能、市场功能或支付功能,这些功能由联网的系统602的相关应用所支持。
图7是示出了在一个示例实施例中被作为图6的联网的系统602的一部分所提供的图6的多个应用620和622的框图。应用620可被宿主在专用服务器机或共享服务器机(未示出)上,该服务器机被通信地耦合,以使能在服务器机之间的通信。应用自身被通信地彼此耦合(例如,经由合适的接口)并且被耦合到多种数据源,以便使得信息在应用之间传递,或者,使得应用共享和访问公共数据。应用还可经由图6的数据库服务器624来访问一个或多个数据库626。
在示例实施例中,为了测试API调用,当API调用被接收并且被应用 620和622处理时,图6的编程客户端608可仿真由一个或多个应用620和622所生成的API响应。经由图6的用户接口609、API schema 611和响应仿真器613,对API响应的仿真可被允许独立于应用620和622。
联网的系统602可提供多个发布、列表和价格设置机制,从而,卖家可列表(或发布相关的信息)用于销售的货物或服务,买家可表达兴趣或指示希望购买这种货物或服务,并且,价格可针对关于货物或服务的交易被设置。为此,市场应用620被示出为包括至少一个发布应用700,以及一个或多个拍卖应用702,该拍卖应用支持拍卖格式的列表和价格设置机制(例如,英式、荷兰式、维氏(Vickrey)、中式、双倍、逆向拍卖等)。多种拍卖应用702还可提供多个支持这种拍卖格式的列表的特征,诸如,逆向价格特征,从而卖家可指定与列表和代理出价(proxy-bidding)特征相关的逆向价格,从而出价人可唤起自动的代理出价。
多个固定价格应用704支持固定价格列表格式(例如,传统的分类广告类型列表或目录列表)和收购类型列表。具体地,收购列表(例如,包括由加利福尼亚的圣何塞的eBay公司所开发的现在购买(BIN)技术)可与拍卖格式列表一起被提供,并且,使得买家可以以通常比拍卖的起拍价格高的固定价格购买货物或服务(其也可经由拍卖被提供以用于销售)。
商店应用706允许用户在“虚拟”商店中对列表进行分组,该虚拟商店可由卖家并用于卖家被品牌化和另外个性化。这种虚拟商店还可提供促销、奖励和特定于并个性化于相关卖家的特征。
信誉应用708允许交易的用户通过利用图6的联网的系统602来建立、健全和维护信誉,该信誉对潜在交易伙伴是可获得的,并且被公布给潜在的交易伙伴。例如,考虑在支持人对人交易的联网的系统602,用户可否则不具有通过其可评估潜在交易伙伴的可信赖度和信用的历史或其他参考信息。久而久之,信誉应用708例如允许用户通过由其他交易伙伴所提供的反馈来在联网的系统602中建立信誉。然后,其他潜在交易伙伴可参考这种信誉,以用于评估信誉和可信赖度的目的。
个性化应用710允许联网的系统602的用户个性化其与联网的系统602的交互的多个方面。例如,用户可通过利用合适的个性化应用710来 创建个性化的参考页面,在该页面上,关于用户是(或已经是)一方的交易的信息可被查看。另外,个性化应用710可使得用户个性化列表以及其与联网的系统602和其他方的交互的其他方面。
联网的系统602可支持多个市场,该市场例如针对具体的地理区域被定制。联网的系统602的一个版本可针对英国被定制,而联网的系统602的另一版本可针对美国被定制。这些版本中的么一个可用作独立的市场,或可以是公共潜在市场的定制(或国际化)呈现。相应地,联网的系统602可包括多个国际化应用712,该国际化应用由联网的系统602根据预定标准(例如,地理的、人口统计学的或市场的标准)来定制信息(和/或对信息的呈现)。例如,国际化应用712可被用于支持针对多个地区性网站的信息的定制,该地区性网站由联网的系统602所操作,并且,经由图6的各自web服务器616可被访问。
对联网的系统602的导航可由一个或多个导航应用714所辅助。例如,搜索应用(作为导航应用的示例)可使能经由联网的系统602的对所公布的列表的关键字搜索。浏览应用可允许用户浏览多个分列表、目录或清单数据结构,根据这些分列表、目录或清单数据结构,列表可在联网的系统602中被分类。多个其他导航应用可被提供,以补充搜索应用和浏览应用。
为了使列表(经由联网的系统602可获得)尽可能在视觉上可增长见闻并且吸引人,市场应用620可包括一个或多个成像应用716,通过利用该成像应用,用户可上载图像,以用于包含在列表中。成像应用716还用作在所查看的列表中合并图像。成像应用716还可支持一个或多个促销特征,诸如,呈现给潜在买家的图像画廊。例如,卖家可支付额外的费用,以使图像被包括在图像画廊中以用于促销的条目。
列表创建应用718允许用户方便地创作关于他们希望经由联网的系统602所交易的货物或服务的列表,并且,列表管理应用720允许卖家管理这种列表。具体地,特定卖家已经创作和/或发布了大量的列表,而对这种列表的管理可呈现为一种挑战。列表管理应用720提供多个特征(例如,自动重列表、清单级监视等)以帮助卖家管理这种列表。一个或多个后期 列表管理应用722还可帮助卖家处理通常发生在后期列表中的多个活动。例如,一旦完成由一个或多个拍卖应用702所辅助的拍卖后,卖家可希望留下关于特定买家的反馈。为此,后期列表管理应用722可向一个或多个信誉应用708提供接口,以便使得卖家方便地向信誉应用708提供关于多个买家的反馈。
争议解决应用724提供机制,从而使在交易方间引起的争议可被解决。例如,争议解决应用724可提供指导流程,从而使各方被指引经过多个步骤,以试图解决争议。如果争议不能经由指导流程多解决,则争议耳廓被升级到第三方中间人或仲裁人处。
多个欺诈避免应用726实现了欺诈检测和避免机制,以减少在联网的系统602中的欺诈的发生。
消息应用728负责生成消息并将消息传递给联网的系统602的用户,这种消息例如通知用户关于在联网的系统602中的列表的状态(例如,在拍卖处理期间向出家人提供“出高价”通知,或者,向用户提供促销和推销信息)。各自消息应用728可利用消息传递网络和平台中的任一个来将消息传递给用户。例如,消息应用728可经由有线网络(例如,因特网)、旧的电话服务(POTS)网络,或无线(例如,移动、蜂窝、Wi-Fi、WiMAX)网络来传递电子邮件(e-mail)、即时消息(IM)、短消息服务(SMS)、文本、传真、或语音(例如,IP语音(VoIP))。
推销应用730支持多种对卖家可获得的推销功能,以使得卖家能够经由联网的系统602来增加销售。推销应用730还操作多种可由卖家唤起的推销特征,并且,可监视并追踪卖家所使用的推销策略的成功。
联网的系统602自身或者一个或多个经由联网的系统602交易的各方可操作由一个或多个忠诚度/促销应用732所支持的忠诚度程序。例如,针对每次所建立的交易和/或由特定卖家所结束的交易,买家可挣得忠诚度或促销点,并且,可被提供奖赏,所积累的忠诚度点可被赎回。
在一些示例实施例中,一个或多个响应仿真应用734可被包括在应用620和/或622中,以模拟或仿真来自上述一个或多个其他应用700到732的响应。在这种示例实施例中,API调用可经由图6的客户端机器610和/ 或612被提交给响应仿真器734,以通过利用图6的应用服务器618、数据库服务器624和数据库626来测试通常由其他应用700到732所接收和处理的API调用。利用一个或多个响应仿真应用734而非多个其他应用可导致资源保持,因为更少的应用服务器618、数据库服务器624和数据库626可被用于仿真API响应。
图8是高级实体关系图,其示出了可被在数据库626中维护的多个表800,并且,表可被图6的应用620和622所使用且支持这些应用。用户表802包括用于图6的联网的系统602的每个已注册用户的记录,并且,可包括关于每个这种已注册用户的标识符、地址和金融票据信息。在联网的系统602中,用户可作为卖家、买家、或二者。在一个示例实施例中,买家可以是已经积累了价值(例如,商业货币或自有货币)的用户,并且相应地,能够针对由联网的系统602所提供的用于销售的条目交换所积累的价值。
表800还包括条目表804,其中,用于货物和服务的条目记录被维护,该货物和服务经由联网的系统602可被获得,或已经经由联网的系统被交易。在条目表804中的每个条目记录还可被链接到在用户表802中的一个或多个用户记录,以便将卖家和一个或多个实际的或潜在的买家与每个条目记录相关联。
交易表806包括用于每个交易(例如,购买或销售交易)的记录,该交易与条目相关,用于该条目的记录存在于条目表804中。
订单表808被订单记录所填充,每个订单记录与订单相关联。每个订单进而可与一个或多个交易相关,用于该交易的记录存在于交易表806中。
在出价表810中的每个出价记录与在联网的系统602处所接收到的出价以及由图7的拍卖应用702所支持的拍卖格式列表相关。在一个示例实施例中,反馈表812被图7的一个或多个信誉应用708所利用,以构建和维护关于用户的信誉信息。历史表814维护了用户已成为一方的交易的历史。一个或多个属性表816记录关于条目的属性信息,用于该条目的记录存在于条目表804中。仅考虑这种属性的单个实例,属性表816可指示与 特定条目相关联的货币属性,该货币属性标识了如卖家所指定的用于相关条目的价格的货币。
如图3所述,响应仿真器表可包括API调用表302、输入域表304、API响应表306,以及输出域表308。响应仿真表还可包括将被输入到所仿真的API响应的输出域中的样本数据。
图9示出了以计算机系统900的示例形式的对机器的图形呈现,在该计算机系统中,用于致使机器执行此处所描述的任意一个或多个方法的指令集可被执行。在可替换的实施例中,机器用作单独设备或可以与其他机器相连接(例如,联网)。在联网的部署中,机器可在服务器-客户端网络环境中用作具有服务器能力的机器或具有客户端能力的机器,或者,在点对点(或分布式)网络环境中用作对等点机器。机器可以是服务器计算机、客户端计算机、个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝电话、web设备、网络路由器、交换机或桥、或任意能够执行(顺序的或其他)指令集的机器,该指令指定将由该机器所进行的动作。另外,虽然仅示出了单个机器,但是,术语“机器”还应被用于包括任意机器的组合,该机器单独地或一起执行指令集(或多个集),以执行此处所讨论的任意一个或多个方法。
示例计算机系统900包括处理器902(例如,中央处理单元(CPU)、图形处理单元(GPU)或二者)、主存储器904和静态存储器906,其经由总线908彼此通信。计算机系统900还可包括视频显示单元910(例如,液晶显示器(LCD)或阴极射线管(CRT))。计算机系统900还包括字母数字输入设备912(例如,键盘)、光标控制设备914(例如,鼠标)、磁盘驱动单元916、信号生成设备918(例如,扬声器),以及网络接口设备920。
磁盘驱动单元916包括机器可读介质922,在该机器可读介质上,存储了一个或多个指令924的集合(例如,软件),该指令体现了此处所描述的任意一个或多个方法或功能。在由计算机系统900所进行的执行期间,指令924还可完全或至少部分地贮存于主存储器904和/或处理器902中,主存储器904和处理器902也组成机器可读介质。
指令924还可经由网络接口设备920在网络926上被发送或接收。虽然在示例实施例中机器可读介质922被示出为单个介质,但是,术语“机器可读介质”应当被认为是包括存储一个或多个指令集的单个介质或多个介质(例如,中央的或分布式的数据库,以及/或相关联的缓存和服务器)。术语“机器可读介质”还应当被认为是包括能够存储、编码或实施用于由机器所执行的指令集的任意介质,该指令集致使机器执行本主题的任意一个或多个方法。相应地,术语“机器可读介质”应当被认为包括但不限于固态存储器、光介质和磁介质,以及载波信号。
因此,已经描述了用于测试可执行指令的方法和系统。以上的描述意欲是阐释性的,而非限制性的。例如,上述实施例(或其一个或多个方面)可被用于彼此组合。在回顾以上描述之后,其他实施例对与本领域技术人员而言是显然的。因此,权利要求的范围应当参照所附权利要求以及这种权利要求所使之有权利的等同物的完整范围而被确定。在所附权利要求中,术语“包括”和“在其中”被用作是“包含”和“其中”的各自的简明英语的等同物。在以下的权利要求中,术语“包括”和“包含”也是可扩充的,即,在这种术语之后,在权利要求中包括那些所列出的元件以外的元件的系统、设备、物品或处理仍被认为是落在该权利要求的范围之内。另外,在以下的权利要求中,术语“第一”、“第二”和“第三”等仅被用作标签,并且,并不意欲在其对象上施加数字要求。
摘要被提供,以遵从1.72(b)的37C.F.R.,其要求摘要允许读者快速地确定技术公开的本质。以如下的理解,摘要被提交:其将不被用于解释或限制权利要求的范围或意义。在以上详细的描述中,多个特征也可被组合以使公开成流线型。这不应当被解释为意欲使未要求权利的所公开的特征成为任意权利要求的核心。而是,有创造性的主题可在于少于特定所公开的实施例的所有特征中。因此,以下的权利要求由此被合并到详尽的描述中,每个权利要求作为单独的实施例存在。

Claims (26)

1.一种测试应用编程接口(API)调用的方法,包括:
接收用于访问至少一个web服务的测试API调用,所述测试API调用指示与所述至少一个web服务相关联的schema;
基于所述schema,验证所述测试API调用;
对所述验证的测试API调用仿真将由所述至少一个web服务产生的API响应,所述至少一个web服务已经接收并处理了所述测试API调用,所述仿真的API响应包括样本数据;以及
提供所述仿真的API响应。
2.如权利要求1所述的方法,其中,所述测试API调用包括至少一个输入域。
3.如权利要求2所述的方法,其中,验证所述测试API调用包括检验以下至少一个:
所述输入域被至少一个值填充;或
所述输入域与有效的可扩展标记语言(XML)schema数据类型相关联。
4.如权利要求1所述的方法,其中,所述测试API调用对应于可由所述至少一个web服务执行的用于执行功能的指令。
5.如权利要求1所述的方法,其中,验证所述测试API调用包括基于所述schema的语法来验证所述测试API调用。
6.如权利要求1所述的方法,其中,提供所述仿真的API响应包括生成包括至少一个被值填充的输出域的所述仿真的API响应。
7.如权利要求1所述的方法,还包括:
基于验证所述测试API调用与所述schema的语法不一致,返回错误消息。
8.如权利要求7所述的方法,其中,接收所述测试API调用包括从web浏览器经由万维网(WWW)接收所述测试API调用,并且返回所述错误消息包括将所述仿真的API响应或所述错误消息返回到所述web浏览器。
9.如权利要求7所述的方法,其中,接收所述测试API调用包括从桌面接口经由万维网(WWW)接收所述测试API调用,并且,返回所述错误消息包括将所述仿真的API响应或所述错误消息返回到所述桌面接口。
10.一种测试应用编程接口(API)调用的系统,所述系统包括:
用于接收用于访问至少一个web服务的测试API调用的装置,所述测试API调用指示与所述至少一个web服务相关联的schema;
用于基于所述schema,验证所述测试API调用的装置;以及
用于为所述验证的测试API调用提供仿真的测试API响应的装置,该仿真的测试API响应仿真将由所述至少一个web服务产生的测试API响应,所述至少一个web服务已经接收并处理了所述测试API调用,所述仿真的API响应包括样本数据。
11.如权利要求10所述的系统,其中,所述测试API调用包括至少一个输入域。
12.如权利要求11所述的系统,其中,验证所述测试API调用包括检验以下至少一个:
所述输入域被至少一个值填充;或
所述输入域与有效的可扩展标记语言(XML)schema数据类型相关联。
13.如权利要求10所述的系统,其中,所述测试API调用对应于可由所述至少一个web服务执行的用于执行功能的指令。
14.如权利要求10所述的系统,其中,验证所述测试API调用包括基于所述schema的语法来验证所述测试API调用。
15.如权利要求10所述的系统,其中,提供所述仿真的API响应包括生成包括至少一个被值填充的输出域的所述仿真的API响应。
16.如权利要求10所述的系统,还包括:
用于基于验证所述测试API调用与所述schema的语法不一致,返回错误消息的装置。
17.一种测试应用编程接口(API)调用的响应仿真器,所述响应仿真器包括:
通信接口,该通信接口与用户接口通信耦合并且从所述用户接口接收:
用于访问至少一个web服务的测试API调用,所述测试API调用指示与所述至少一个web服务相关联的schema;
验证模块,该验证模块与所述通信接口通信耦合,用于判断所述测试API调用是否有效;以及
响应模块,该响应模块与所述验证模块和所述通信接口通信耦合,用于为所述验证的测试API调用提供仿真的API响应,所述仿真的API响应仿真将由所述至少一个web服务产生的API响应,所述至少一个web服务已经接收并处理了所述测试API调用,所述仿真的API响应包括样本数据。
18.如权利要求17所述的响应仿真器,其中,所述测试API调用包括至少一个用值填充的输入域。
19.如权利要求18所述的响应仿真器,其中,所述验证模块基于检验以下至少一个来判断有效的测试API调用:
所述输入域被至少一个值填充;或
所述输入域与有效的可扩展标记语言(XML)schema数据类型相关联。
20.如权利要求17所述的响应仿真器,其中,所述测试API调用对应于可由所述至少一个web服务执行的用于执行功能的指令。
21.如权利要求17所述的响应仿真器,其中,所述验证模块基于所述schema的语法来验证所述测试API调用。
22.如权利要求17所述的响应仿真器,所述响应模块基于所述测试API调用和所述schema的语法的比较来指示所述测试API调用的失败或部分成功。
23.如权利要求22所述的响应仿真器,其中,所述通信模块从web浏览器经由万维网(WWW)接收所述测试API调用,并且,所述通信模块经由WWW将所述测试API调用的失败或部分成功的指示返回给所述web浏览器。
24.如权利要求22所述的响应仿真器,其中,所述通信模块从桌面程序接口经由万维网(WWW)接收所述测试API调用,并且,所述通信模块经由WWW将所述测试API调用的失败或部分成功的指示返回给所述桌面程序接口。
25.如权利要求17所述的响应仿真器,其中,所述响应模块生成包括至少一个被值填充的输出域的所述仿真的API响应。
26.如权利要求17所述的响应仿真器,其中,所述响应仿真器经由将插件安装到桌面程序中而被集成到所述桌面程序,其中,所述桌面程序被包括在用户接口中。
CN200880131838.7A 2008-10-31 2008-10-31 测试应用编程接口(api)调用的方法、系统和响应仿真器 Active CN102204167B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510294055.2A CN104980313A (zh) 2008-10-31 2008-10-31 测试可执行指令的系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2008/001827 WO2010048746A1 (en) 2008-10-31 2008-10-31 System and method to test executable instructions

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201510294055.2A Division CN104980313A (zh) 2008-10-31 2008-10-31 测试可执行指令的系统和方法

Publications (2)

Publication Number Publication Date
CN102204167A CN102204167A (zh) 2011-09-28
CN102204167B true CN102204167B (zh) 2015-07-01

Family

ID=42128178

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880131838.7A Active CN102204167B (zh) 2008-10-31 2008-10-31 测试应用编程接口(api)调用的方法、系统和响应仿真器

Country Status (3)

Country Link
US (2) US9015532B2 (zh)
CN (1) CN102204167B (zh)
WO (1) WO2010048746A1 (zh)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010048746A1 (en) 2008-10-31 2010-05-06 Ebay Inc. System and method to test executable instructions
US8949792B2 (en) * 2009-08-18 2015-02-03 Adobe Systems Incorporated Methods and systems for data service development
US8429466B2 (en) * 2010-07-23 2013-04-23 Sap Ag XML-schema-based automated test procedure for enterprise service pairs
US20120192155A1 (en) * 2011-01-20 2012-07-26 Microsoft Corporation Code advisor for web compatibility and interoperability
WO2013105991A2 (en) 2011-02-17 2013-07-18 Sable Networks, Inc. Methods and systems for detecting and mitigating a high-rate distributed denial of service (ddos) attack
CN102306122A (zh) * 2011-09-14 2012-01-04 北京星网锐捷网络技术有限公司 自动化测试方法及设备
WO2013162554A1 (en) 2012-04-25 2013-10-31 Empire Technology Development Llc Application programming interface testing services
EP2850793B1 (en) 2012-05-14 2016-09-21 Sable Networks, Inc System and method for ensuring subscriber fairness using outlier detection
US9419884B1 (en) * 2012-12-28 2016-08-16 Emc Corporation Intelligent automated testing method for restful web services
US9513671B2 (en) 2014-08-01 2016-12-06 Microsoft Technology Licensing, Llc Peripheral retention device
US10191986B2 (en) 2014-08-11 2019-01-29 Microsoft Technology Licensing, Llc Web resource compatibility with web applications
US9705637B2 (en) 2014-08-19 2017-07-11 Microsoft Technology Licensing, Llc Guard band utilization for wireless data communication
US9397723B2 (en) 2014-08-26 2016-07-19 Microsoft Technology Licensing, Llc Spread spectrum wireless over non-contiguous channels
US9424048B2 (en) 2014-09-15 2016-08-23 Microsoft Technology Licensing, Llc Inductive peripheral retention device
US9824000B1 (en) 2015-10-21 2017-11-21 Amazon Technologies, Inc. Testing calling code dynamically with random error injection based on user-specified configuration
US10439887B2 (en) 2016-02-02 2019-10-08 Sungard Availability Services, Lp Generic test framework for service interfaces
US9959198B1 (en) * 2016-05-26 2018-05-01 Google Llc Simulated testing of API
US11663110B2 (en) * 2016-10-31 2023-05-30 International Business Machines Corporation Analysis to check web API code usage and specification
US10489380B2 (en) * 2016-12-28 2019-11-26 American Express Travel Related Services Company, Inc. Systems and methods for processing data service requests
US10089219B1 (en) * 2017-01-20 2018-10-02 Intuit Inc. Mock server for testing
CN107608891B (zh) * 2017-09-21 2020-12-15 中国航空无线电电子研究所 基于指令的数据处理应用检测方法
US11042475B2 (en) * 2017-12-19 2021-06-22 Mastercard International Incorporated Systems and methods for use in certifying interactions with hosted services
US10452843B2 (en) * 2018-01-11 2019-10-22 ArecaBay, Inc. Self-adaptive application programming interface level security monitoring
US10540270B1 (en) * 2018-01-25 2020-01-21 Amazon Technologies, Inc. Representation-based automated software testing
US10467066B2 (en) * 2018-03-06 2019-11-05 Visa International Service Association System and method for establishing common request processing
CN108664396A (zh) * 2018-05-08 2018-10-16 平安普惠企业管理有限公司 银行交互接口验证方法、装置、计算机设备及存储介质
CN109298999B (zh) * 2018-08-21 2021-08-31 杭州群核信息技术有限公司 一种基于数据分布特征的核心化软件测试方法和装置
US10929276B2 (en) * 2019-06-14 2021-02-23 Paypal, Inc. Simulation computing services for testing application functionalities
US11579993B2 (en) * 2019-08-22 2023-02-14 Micro Focus Llc Regression testing of computer systems using recorded prior computer system communications
US11403208B2 (en) 2019-11-21 2022-08-02 Mastercard International Incorporated Generating a virtualized stub service using deep learning for testing a software module
CN111124924B (zh) * 2019-12-25 2023-05-12 五八同城信息技术有限公司 Api部署方法、装置、电子设备及存储介质
US11614991B2 (en) * 2020-07-09 2023-03-28 Dell Products L.P. Recommendation engine for application programming interface (API) in a multi-cloud environment
US11237889B1 (en) * 2020-08-12 2022-02-01 Salesforce.Com, Inc. Application infrastructure configuration based on annotated API schemas
US11030082B1 (en) * 2020-08-12 2021-06-08 Salesforce.Com, Inc. Application programming interface simulation based on declarative annotations

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1848774A (zh) * 2005-04-11 2006-10-18 华为技术有限公司 一种远程调用通信组件的系统及方法
CN101261600A (zh) * 2007-03-06 2008-09-10 中兴通讯股份有限公司 一种软件测试装置及测试软件的设计方法
US7437714B1 (en) * 2003-11-04 2008-10-14 Microsoft Corporation Category partitioning markup language and tools

Family Cites Families (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5694546A (en) * 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
US6192108B1 (en) * 1997-09-19 2001-02-20 Mci Communications Corporation Performing automated testing using automatically generated logs
US6035288A (en) * 1998-06-29 2000-03-07 Cendant Publishing, Inc. Interactive computer-implemented system and method for negotiating sale of goods and/or services
US6907546B1 (en) 2000-03-27 2005-06-14 Accenture Llp Language-driven interface for an automated testing framework
CA2306974A1 (en) 2000-04-28 2001-10-28 Ibm Canada Limited-Ibm Canada Limitee Management of application programming interface interoperability
US6941261B1 (en) 2000-05-01 2005-09-06 General Electric Company Cause and effect logic application implementation
US7496637B2 (en) * 2000-05-31 2009-02-24 Oracle International Corp. Web service syndication system
US9171851B2 (en) * 2000-08-08 2015-10-27 The Directv Group, Inc. One click web records
IE20010964A1 (en) 2000-11-03 2002-05-29 Wilde Technologies Ltd A software development process
US7657419B2 (en) * 2001-06-19 2010-02-02 International Business Machines Corporation Analytical virtual machine
GB2385952B (en) 2001-10-24 2006-05-31 Imagine Broadband Ltd Data processing system and method
US7185235B2 (en) * 2001-12-28 2007-02-27 Sap Ag Test and verification framework
US8255548B2 (en) * 2002-06-13 2012-08-28 Salesforce.Com, Inc. Offline web services API to mirror online web services API
FR2843214B1 (fr) * 2002-07-30 2008-07-04 Bull Sa Procede de verification fonctionnelle d'un modele de circuit integre pour constituer une plate-forme de verification, equipement emulateur et plate-forme de verification.
US20040167749A1 (en) * 2003-02-21 2004-08-26 Richard Friedman Interface and method for testing a website
US7363355B2 (en) * 2003-06-30 2008-04-22 Intel Corporation Transparent disconnected services discovery and use
US20050081218A1 (en) * 2003-08-26 2005-04-14 Acott Troy Steven Configurable simulation of virtual machine behavior
US20050075856A1 (en) * 2003-10-01 2005-04-07 Sbc Knowledge Ventures, L.P. Data migration using SMS simulator
US7016800B1 (en) * 2003-12-16 2006-03-21 Adaptec, Inc. Centralized console API testing architecture
US8627458B2 (en) * 2004-01-13 2014-01-07 Mcafee, Inc. Detecting malicious computer program activity using external program calls with dynamic rule sets
US20050160433A1 (en) * 2004-01-21 2005-07-21 Lambert John R. Optimizations of user interface-independent testing
US7603658B2 (en) 2004-02-19 2009-10-13 Oracle International Corporation Application functionality for a test tool for application programming interfaces
US20050251766A1 (en) * 2004-05-07 2005-11-10 Shah Gaurav R Circuit design interface
US20060015314A1 (en) * 2004-06-30 2006-01-19 International Business Machines Corporation Methods, systems and program products for annotating system traces with control program information and presenting annotated system traces
US20060041416A1 (en) * 2004-08-18 2006-02-23 Shah Gaurav R Circuit design simulation
US20060101358A1 (en) * 2004-10-28 2006-05-11 Shah Gauray R Circuit design simulation
US7549144B2 (en) * 2005-02-22 2009-06-16 Microsoft Corporation Custom API modeling for source code static analysis simulator
US8498002B2 (en) * 2005-03-29 2013-07-30 Canon Kabushiki Kaisha Information processing apparatus capable of customizing device driver, information processing method, and control program
WO2006133222A2 (en) * 2005-06-07 2006-12-14 Vmware, Inc. Constraint injection system for immunizing software programs against vulnerabilities and attacks
US7562255B2 (en) * 2005-08-11 2009-07-14 Microsoft Corporation Configurable system and methods for writing and executing test components
US8145726B1 (en) * 2005-09-19 2012-03-27 Amazon Technologies, Inc. Method and apparatus for web resource validation
US8332817B2 (en) 2005-11-08 2012-12-11 Red Hat, Inc. Certifying a software application based on identifying interface usage
US7818328B2 (en) * 2006-01-20 2010-10-19 Siebel Systems, Inc. API for obtaining unambiguous representation of objects in a relational database
CN100399341C (zh) 2006-03-31 2008-07-02 电子科技大学 一种矢量模式软硬件协同仿真/验证方法
US7529977B2 (en) * 2006-05-31 2009-05-05 Microsoft Corporation Automated extensible user interface testing
US20070283327A1 (en) * 2006-06-02 2007-12-06 Microsoft Corporation Hierarchical test verification using an extendable interface
US7996818B1 (en) * 2006-12-29 2011-08-09 Amazon Technologies, Inc. Method for testing using client specified references
US20080168092A1 (en) * 2007-01-10 2008-07-10 General Electric Company Systems and methods for turbine control simulation
US8504543B1 (en) * 2007-03-09 2013-08-06 Glam Media, Inc. Automatic API generation for a web application
US20080282230A1 (en) * 2007-05-07 2008-11-13 International Business Machines Corporation Product, method and system for using window authentication in testing graphical user interface applications
US7945918B2 (en) * 2007-06-29 2011-05-17 International Business Machines Corporation Generalized WBEM/CIM indication provider simulation engine
US8010891B2 (en) * 2007-08-02 2011-08-30 International Business Machines Corporation Coordinated XML data parsing and processing from within separate computing processes
US8219378B1 (en) * 2007-09-28 2012-07-10 The Mathworks, Inc. Automatic numerical simulation of processor environment
US20090234953A1 (en) * 2008-03-11 2009-09-17 Palm, Inc. Apparatus and methods for integration of third party virtual private network solutions
US20090235282A1 (en) * 2008-03-12 2009-09-17 Microsoft Corporation Application remote control
US8782615B2 (en) * 2008-04-14 2014-07-15 Mcafee, Inc. System, method, and computer program product for simulating at least one of a virtual environment and a debugging environment to prevent unwanted code from executing
US9246768B2 (en) * 2008-06-18 2016-01-26 Camber Corporation Systems and methods for a simulated network attack generator
US8285702B2 (en) * 2008-08-07 2012-10-09 International Business Machines Corporation Content analysis simulator for improving site findability in information retrieval systems
US8245246B2 (en) * 2008-09-09 2012-08-14 International Business Machines Corporation Method, system, and computer program product for implementing a web service interface
WO2010048746A1 (en) 2008-10-31 2010-05-06 Ebay Inc. System and method to test executable instructions

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7437714B1 (en) * 2003-11-04 2008-10-14 Microsoft Corporation Category partitioning markup language and tools
CN1848774A (zh) * 2005-04-11 2006-10-18 华为技术有限公司 一种远程调用通信组件的系统及方法
CN101261600A (zh) * 2007-03-06 2008-09-10 中兴通讯股份有限公司 一种软件测试装置及测试软件的设计方法

Also Published As

Publication number Publication date
US9015532B2 (en) 2015-04-21
CN102204167A (zh) 2011-09-28
US20150212931A1 (en) 2015-07-30
WO2010048746A1 (en) 2010-05-06
US20110264961A1 (en) 2011-10-27
US9477584B2 (en) 2016-10-25

Similar Documents

Publication Publication Date Title
CN102204167B (zh) 测试应用编程接口(api)调用的方法、系统和响应仿真器
US20210035175A1 (en) Systems and methods to facilitate transactions
US7860784B2 (en) Method and system for user payment account management
US11579891B2 (en) Mobile service applications
US9430784B1 (en) System for E-commerce accessibility
US20050171842A1 (en) Method and system for incentivizing the promotion of a payment service
NL2004646C2 (en) Method and system for payment of a network-based marketplace transaction.
US20020038256A1 (en) Transactional control system
CN104980313A (zh) 测试可执行指令的系统和方法
US10311506B1 (en) System and method for e-commerce accessibility
US20100121649A1 (en) Methods and systems for user registration
US11023960B1 (en) System and method for e-commerce accessibility
KR102498521B1 (ko) 메타버스 기반 가상 오피스 서비스 제공 시스템
US11470028B1 (en) System and method for adding interactivity and dynamic data to e-commerce emails
Russell PayPal APIs: Up and Running
Ameh DESIGN AND IMPLEMENTATION OF A WEB BASED SHOPPING MANAGEMENT SYSTEM
Cummaford HCI engineering design principles: Acquisition of class-level knowledge
Agbedo DESIGN AND IMPLEMENTATION OF WEB BASED SYSTEM FOR INTERNET BANKING

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20151104

Address after: American California

Patentee after: EBAY INC

Address before: American California

Patentee before: Electonic Bay